1 votes

L'abaissement de Serverlimit ne limite pas le nombre de processus sur le MPM prefork

J'ai fixé ServerLimt à 15 et MaxClients à 8, mais de temps en temps, je vois 150 processus Apache. Comment cela se fait-il ?

J'ai Apache/2.4.7 (Ubuntu), MPM : prefork

StartServers           1
MinSpareServers        1
MaxSpareServers        2
Serverlimit           15
MaxClients             8
MaxRequestsPerChild   50

Peu après le démarrage de mon serveur, je vois 11 processus Apache : un processus parent et 10 processus enfants. Sur cette base, je suppose que 8 des 10 processus enfants sont dus au paramètre "MaxClients", et que 2 autres sont créés parce que j'ai défini "MaxSpareServers=2".

De temps en temps, le nombre de processus dépasse un peu les 15. Je ne comprends pas comment cela peut se produire si la limite du serveur est de 15. Mais le vrai problème est que, de temps en temps, le nombre de processus monte jusqu'à environ 150, ce qui épuise la RAM.

La documentation indique "Avec le MPM prefork, n'utilisez cette directive que si vous avez besoin de fixer MaxClients à une valeur supérieure à 256 (valeur par défaut). Ne fixez pas la valeur de cette directive à un niveau supérieur à celui auquel vous souhaiteriez fixer MaxClients".

La première phrase semble dire que je ne devrais pas y toucher, mais la seconde semble suggérer que je devrais le réduire pour qu'il corresponde à MaxClients.

En bref : Si Serverlimit ne fonctionne pas, comment puis-je fixer une limite stricte au nombre de processus Apache ?

1 votes

S'agit-il d'un doublon ? serverfault.com/questions/244750/

0 votes

J'ai testé la même configuration sur une machine virtuelle (Ubuntu 14.04 Apache 2.4.7). Cela fonctionne très bien. Comment surveillez-vous le nombre de processus (top, ps, lsof) ? Avez-vous essayé d'utiliser ab pour stresser le serveur et déclencher le problème ?

1voto

nico_ekito Points 13977

Êtes-vous sûr qu'Apache lit le bon fichier de configuration et / ou que vous utilisez le mpm prefork ?

Vérifiez la configuration actuelle (en particulier mpm et celles que vous avez écrites) avec :

apache2ctl -S

Si c'est le cas, postez-les ici.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X