Le paramétrage d'apache2 en mode prefork et en mode worker

En mode prefork

Exemple de configuration :

<IfModule mpm_prefork_module>
    ServerLimit          128
    MaxClients           128
    MinSpareServers        5
    MaxSpareServers       10
    MaxRequestsPerChild 1000
</IfModule>

Voila (d'après ce que j'ai compris) ce que signifie les différents termes :

  • ServerLimit 128 ⇔ On démarre au max 128 processus. Le nombre de processus lancé est ajusté dynamiquement, apache lancera 128 processus uniquement si c'est nécessaire.
  • MaxClients 128 ⇔ On permet 128 connexions simultanées (MaxClients = ServerLimit)
  • MinSpareServers 5 ⇔ On demande à apache de conserver au minimum 5 processus en attente de connexion.
  • MaxSpareServers 10 ⇔ On demande à apache de ne pas conserver plus de 10 processus en attente de connexion.
  • MaxRequestsPerChild 1000 ⇔ Au bout de 1000 connexions sur un enfant on le tue (permet de tolérer les éventuelles fuites mémoires)

En mode worker

Exemple de configuration :

<IfModule mpm_worker_module>
    ServerLimit            2
    ThreadsPerChild       64
    MaxClients           128
    MinSpareThreads       25
    MaxSpareThreads       75
    MaxRequestsPerChild 1000
</IfModule>

Voila (d'après ce que j'ai compris) ce que signifie les différents termes :

  • ServerLimit 2 ⇔ On démarre au max 2 processus. Le nombre de processus lancé est ajusté dynamiquement, apache lancera 2 processus uniquement si c'est nécessaire.
  • ThreadsPerChild 64 ⇔ On lance 64 thread pour chaque processus
  • MaxClients 128 ⇔ On permet 128 connexions simultanées (MaxClients = ServerLimit * ThreadsPerChild)
  • MinSpareThreads 25 ⇔ On demande à apache de conserver au minimum 25 threads en attente de connexion
  • MaxSpareThreads 75 ⇔ On demande à apache de ne pas conserver plus de 25 threads en attente de connexion
  • MaxRequestsPerChild 1000 ⇔ Au bout de 1000 connexions sur un enfant on le tue (permet de tolérer les éventuelles fuites mémoires)

Discussion

dahnodahno, 2011/05/26 16:54

Bonjour,

j'avais un apache en prefork et pour recupéré le nombre de client connecté dessus, il me suffisait de compter le nombre de process. Je suis passer en worker et je ne vois pas comment recuperer ce nombre. Auriez vous une idéee? Merci d'avance, dahno

Enter your comment
 
 
 

Recent changes RSS feed Valid XHTML 1.0 Valid CSS Driven by DokuWiki