<-
Apache > Serveur HTTP > Documentation > Version 2.4 > Modules

Apache MPM prefork

Langues Disponibles:  de  |  en  |  fr  |  ja  |  tr 

Description:Impl�mente un serveur web avec d�marrage anticip� de processus, sans thread
Statut:MPM
Identificateur�de�Module:mpm_prefork_module
Fichier�Source:prefork.c

Sommaire

Ce module multi-processus (MPM) impl�mente un serveur web avec d�marrage anticip� de processus. Chaque processus du serveur peut r�pondre aux requ�tes entrantes, et un processus parent contr�le la taille du jeu de processus enfants. Il est particuli�rement indiqu� pour les sites qui ne doivent pas utiliser les threads afin de maintenir une compatibilit� avec certaines biblioth�ques non s�res du point de vue des threads. C'est �galement le MPM le plus appropri� si l'on veut isoler les requ�tes les unes des autres, de fa�on � ce qu'un probl�me concernant une requ�te n'affecte pas les autres.

Ce MPM s'auto-contr�le de mani�re efficace, de sorte qu'il est rarement n�cessaire d'ajuster ses directives de configuration. Le plus important est la d�finition de la directive MaxRequestWorkers ; sa valeur doit �tre assez grande pour pouvoir traiter autant de requ�tes simultan�es que vous pensez recevoir, mais assez petite pour conserver suffisamment de m�moire RAM pour tous les processus.

Directives

Sujets

Voir aussi

top

Comment �a marche

Un processus de contr�le unique a pour t�che de lancer les processus enfants qui attendent les connexions et les traitent au fur et � mesure qu'elles arrivent. Apache httpd essaie toujours de maintenir plusieurs processus serveurs inactifs ou en r�serve, afin de pouvoir traiter les requ�tes entrantes. De cette fa�on, les clients n'ont pas besoin d'attendre le d�marrage d'un nouveau processus enfant pour que leurs requ�tes puissent �tre trait�es.

Les directives StartServers, MinSpareServers, MaxSpareServers et MaxRequestWorkers permettent de contr�ler la mani�re dont le processus parent cr�e les processus enfants pour traiter les requ�tes. En g�n�ral, Apache httpd s'auto-contr�le de mani�re efficace, de sorte que la plupart des sites peuvent conserver les valeurs par d�faut des directives. Les sites qui doivent traiter plus de 256 requ�tes simultan�es doivent augmenter la valeur de MaxRequestWorkers, alors que les sites dont la ressource m�moire est limit�e doivent la diminuer afin d'�viter une hyperactivit� du serveur (utilisation excessive de la m�moire virtuelle sur disque). Vous trouverez plus d'informations � propos du contr�le de la cr�ation de processus dans le document conseils en mati�re de performances

Alors que le processus parent est en g�n�ral d�marr� en tant que root sous Unix afin de pouvoir se mettre � l'�coute sur le port 80, les processus enfants sont lanc�s par Apache httpd sous un utilisateur avec privil�ges restreints. On peut contr�ler les privil�ges accord�s aux processus enfants d'Apache httpd � l'aide des directives User et Group. Les processus enfants doivent �tre en mesure de lire tous les contenus destin�s � �tre servis, mais leurs privil�ges doivent �tre aussi bas que possible.

La directive MaxConnectionsPerChild permet de contr�ler la fr�quence � laquelle le serveur recycle ses processus en arr�tant les plus anciens et en en lan�ant de nouveaux.

Ce module MPM utilise le mutex mpm-accept pour s�rialiser l'acc�s aux connexions entrantes lorsque peut se pr�senter un probl�me d'afflux de requ�tes (en g�n�ral quand il y a plusieurs sockets en �coute). Les aspects de l'impl�mentation de ce mutex peuvent �tre configur�s via la directive Mutex. Vous trouverez des informations suppl�mentaires � propos de ce mutex dans la documentation � propos des conseils en mati�re de performances

top

MaxSpareServers Directive

Description:Nombre maximum de processus serveurs enfants inactifs
Syntaxe:MaxSpareServers nombre
D�faut:MaxSpareServers 10
Contexte:configuration du serveur
Statut:MPM
Module:prefork

La directive MaxSpareServers permet de d�finir le nombre maximum souhait� de processus serveurs enfants inactifs. Un processus inactif est un processus qui ne traite pas de requ�te. S'il y a plus de MaxSpareServers processus inactifs, le processus parent arr�tera les processus exc�dentaires.

La modification de ce param�tre n'est n�cessaire que dans le cas de sites tr�s sollicit�s. D�finir ce param�tre � une valeur tr�s grande est cependant dans la plupart des cas une mauvaise id�e. Si vous essayez d'affecter � ce param�tre une valeur �gale ou inf�rieure � la valeur de MinSpareServers, le serveur HTTP Apache l'ajustera automatiquement � la valeur de MinSpareServers + 1.

Voir aussi

top

MinSpareServers Directive

Description:Nombre minimum de processus serveurs enfants inactifs
Syntaxe:MinSpareServers nombre
D�faut:MinSpareServers 5
Contexte:configuration du serveur
Statut:MPM
Module:prefork

La directive MinSpareServers permet de d�finir le nombre minimum d�sir� de processus serveurs enfants inactifs. Un processus inactif est un processus qui ne traite pas de requ�te. S'il y a moins de MinSpareServers processus inactifs, le processus parent va cr�er de nouveaux enfants de la mani�re suivante : il en cr�e un, attend une seconde, il en cr�e deux, attend une seconde, il en cr�e quatre, puis continue ainsi exponentiellement jusu'� ce que son taux de cr�ation de processus enfants soit de 32 par seconde. Il ne s'arr�te que lorsque le nombre de processus enfants correspond � la d�finition de la directive MinSpareServers.

La modification de ce param�tre n'est n�cessaire que dans le cas de sites tr�s sollicit�s. D�finir ce param�tre � une valeur tr�s grande est dans la plupart des cas une mauvaise id�e.

Voir aussi

Langues Disponibles:  de  |  en  |  fr  |  ja  |  tr 

top

Commentaires

Notice:
This is not a Q&A section. Comments placed here should be pointed towards suggestions on improving the documentation or server, and may be removed again by our moderators if they are either implemented or considered invalid/off-topic. Questions on how to manage the Apache HTTP Server should be directed at either our IRC channel, #httpd, on Freenode, or sent to our mailing lists.