Ce module multi-processus (MPM) implémente un serveur web basé
exclusivement sur les threads et optimisé pour Novell NetWare.
Le thread maître est chargé du lancement de threads esclaves qui
attendent les connexions et les traitent au fur et à mesure de leur
arrivée. Le serveur HTTP Apache essaie toujours de maintenir
plusieurs threads
esclaves en spare (en réserve) ou inactifs. De cette
façon, les clients n'ont pas besoin d'attendre le lancement d'un
nouveau thread enfant pour que leurs requêtes soient traitées.
Les directives StartThreads, MinSpareThreads, MaxSpareThreads, et MaxThreads contrôlent
la manière dont le thread maître crée les threads esclaves afin de
traiter les requêtes. En général, Apache httpd s'auto-régule correctement,
et la plupart des sites ne nécessitent aucune modification des
valeurs par défaut de ces directives. Pour les sites dont le serveur
est limité en mémoire, il peut s'avérer nécessaire de diminuer la
valeur de la directive MaxThreads afin d'éviter une
hyper-activité du serveur (arrêts de threads inactifs et lancement incessant
de nouveau threads). Vous trouverez plus d'informations à
propos du contrôle de la création de processus dans le document conseils en matière de
performances.
La directive MaxRequestsPerChild
contrôle la fréquence à laquelle le serveur recycle ses processus
en arrêtant les anciens et en en lançant de nouveaux. Sous le
système d'exploitation NetWare, il est vivement recommandé de
laisser cette directive à 0, ce qui permet aux threads esclaves de
continuer à traiter les requêtes indéfiniment.