2016-12-23 1 views
0

j'ai modifié la configuration par défaut:Changé mpm-worker 2.4 config mais sans effet

<IfModule worker.c> 
ServerLimit 20 
StartServers   4 
MaxRequestWorkers    600 
MinSpareThreads   25 
MaxSpareThreads   75 
ThreadsPerChild   30 
MaxConnectionsPerChild 0 
</IfModule> 

Et quand en période de pointe, en utilisant-état du serveur, lorsqu'il atteint 400 sessions, il ne semble toujours pas de créer de nouveaux travailleurs et reste à 400:

BusyWorkers: 400 
IdleWorkers: 0 
Scoreboard: KKKKCKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKRKCKKKKKKCKKRKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKRKKKKKCKKKCKKKKKRKKKCKKKKKKCKKKKKKKKKKKKRCKKCKKKCKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKCKKKRKKKKKKKRKKKKKKKKKKKKKCKCKKKKKCKKKCKCKKRCRKKKKKKKKKKKKRKKKKKKKKKKKKKKCKKKKCKKKKKRKCCKKKKKKKKKKKKKKCKKKKKKKRKKKKKKKKKKCKKKCKKRKKCRKKRKKKKKKKKKKKKKCKKKKRKKKKRKKKKCKKKKKRKKKKKKKKKKKKKKKKKKKKRKKKKKKKWKKKKKKKKKKKCKKKK 

Si je change l'utilisateur de apache et émettre un ulimit -ui obtenir 1024

Toutes les idées?

Répondre

0

J'ai finalement compris pourquoi Apache n'était pas capable de créer plus de 400 travailleurs. C'était à cause du format du fichier de configuration. Dans notre fichier httpd.conf, les paramètres des modules worker et prefork sont écrits juste avant la section "LoadModule". Il semble qu'apache n'aime pas ce format, donc il ignore nos valeurs pour le mode travailleur et retombe aux valeurs par défaut. La correction est très simple, nous devons supprimer les paramètres des modules worker et prefork de la section "LoadModules" ci-dessus et les placer après cette section.

Ces valeurs sont optimales pour 1000 connexions simultanées:

# prefork MPM 
# StartServers: number of server processes to start 
# MinSpareServers: minimum number of server processes which are kept spare 
# MaxSpareServers: maximum number of server processes which are kept spare 
# ServerLimit: maximum value for MaxClients for the lifetime of the server 
# MaxClients: maximum number of server processes allowed to start 
# MaxRequestsPerChild: maximum number of requests a server process serves 
<IfModule prefork.c> 
    ServerLimit           40 
    StartServers          5 
    MinSpareThreads       25 
    MaxSpareServers       75 
    MaxRequestWorkers     1000 
    ThreadsPerChild        25 
    MaxConnectionsPerChild  0 
</IfModule> 
# 
# worker MPM 
# StartServers: initial number of -erver processes to start 
# MaxClients: maximum number of simultaneous client connections 
# MinSpareThreads: minimum number of worker threads which are kept spare 
# MaxSpareThreads: maximum number of worker threads which are kept spare 
# ThreadsPerChild: constant number of worker threads in each server process 
# MaxRequestsPerChild: maximum number of requests a server process serves 
<IfModule mpm_worker_module> 
    ServerLimit           40 
    StartServers          5 
    MinSpareThreads       25 
    MaxSpareThreads       75 
    MaxRequestWorkers   1000 
    ThreadsPerChild        25 
    MaxConnectionsPerChild  0 
</IfModule> 

Après que tout arrêt/démarrage processus apache.

0

Vous devez arrêter complètement/démarrer pour que les changements mpm prennent effet, redémarrer ou gracieux vous donnera toujours les paramètres précédents.