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

Apache MPM : Directives Communes

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

Description:Une s´┐Żrie de directives impl´┐Żment´┐Żes par plusieurs modules multi-processus (MPM)
Statut:MPM

Directives

top

CoreDumpDirectory Directive

Description:Le r´┐Żpertoire dans lequel le serveur HTTP Apache va tenter de se positionner avant d'effectuer un vidage m´┐Żmoire
Syntaxe:CoreDumpDirectory r´┐Żpertoire
D´┐Żfaut:Voir ci-dessous pour le r´┐Żpertoire par d´┐Żfaut
Contexte:configuration du serveur
Statut:MPM
Module:event, prefork, worker

Cette directive permet de d´┐Żfinir le r´┐Żpertoire dans lequel Apache httpd va tenter de se positionner avant d'effectuer un vidage m´┐Żmoire sur disque. Si votre syst´┐Żme d'exploitation est configur´┐Ż pour cr´┐Żer des fichiers de vidage m´┐Żmoire dans le r´┐Żpertoire de travail des processus qui se sont crash´┐Żs, CoreDumpDirectory est n´┐Żcessaire pour d´┐Żfinir un r´┐Żpertoire de travail autre que le r´┐Żpertoire par d´┐Żfaut ServerRoot, ce r´┐Żpertoire de travail ne devant pas ´┐Żtre accessible en ´┐Żcriture par l'utilisateur sous lequel le serveur s'ex´┐Żcute.

Si vous avez besoin d'un vidage m´┐Żmoire pour le d´┐Żbogage, vous pouvez utiliser cette directive pour le placer ´┐Ż un endroit diff´┐Żrent. Cette directive n'a aucun effet si votre syst´┐Żme d'exploitation n'est pas configur´┐Ż pour cr´┐Żer des fichiers de vidage m´┐Żmoire dans le r´┐Żpertoire de travail des processus qui se sont crash´┐Żs.

Vidages m´┐Żmoire sous Linux

Si Apache httpd est d´┐Żmarr´┐Ż sous l'utilisateur root puis bascule vers un autre utilisateur, le noyau Linux d´┐Żsactive les vidages m´┐Żmoire, m´┐Żme si le r´┐Żpertoire est accessible en ´┐Żcriture au processus. Apache httpd (versions 2.0.46 et sup´┐Żrieures) r´┐Żactive les vidages m´┐Żmoire sous Linux 2.4 et au del´┐Ż, mais seulement si vous d´┐Żfinissez une directive CoreDumpDirectory.

Vidages m´┐Żmoire sous BSD

Pour activer le vidage m´┐Żmoire des ex´┐Żcutables suid sur les syst´┐Żmes de style BSD (comme FreeBSD), d´┐Żfinissez kern.sugid_coredump ´┐Ż 1.

Signaux sp´┐Żcifiques

CoreDumpDirectory n'est trait´┐Ż qu'´┐Ż la reception d'un certain nombre de signaux , SIGFPE, SIGILL, SIGABORT, SIGSEGV, et SIGBUS.

Sur certains syst´┐Żmes d'exploitation, SIGQUIT provoque aussi un vidage m´┐Żmoire, mais n'est pas trait´┐Ż par les directives CoreDumpDirectory ou EnableExceptionHook, si bien que la d´┐Żfinition du r´┐Żpertoire d'enregistrement du vidage m´┐Żmoire est enti´┐Żrement d´┐Żvolue au syst´┐Żme d'exploitation.

top

EnableExceptionHook Directive

Description:Active un hook ("point d'accrochage logiciel") qui ex´┐Żcute des gestionnaires d'exception apr´┐Żs un crash
Syntaxe:EnableExceptionHook On|Off
D´┐Żfaut:EnableExceptionHook Off
Contexte:configuration du serveur
Statut:MPM
Module:event, prefork, worker

Pour des raisons de s´┐Żcurit´┐Ż, cette directive n'est disponible que si la compilation du serveur a ´┐Żt´┐Ż configur´┐Że avec l'option --enable-exception-hook. Elle permet d'activer un hook ("point d'accrochage logiciel") qui autorise certains modules externes ´┐Ż effectuer un branchement et accomplir telle ou telle action apr´┐Żs le crash d'un processus enfant.

Deux modules, mod_whatkilledus et mod_backtrace utilisent ce hook. Veuillez vous r´┐Żf´┐Żrer ´┐Ż la page EnableExceptionHook de Jeff Trawick pour plus d'informations ´┐Ż leur sujet.

top

GracefulShutdownTimeout Directive

Description:Sp´┐Żcifie le d´┐Żlai maximum apr´┐Żs lequel le serveur va s'arr´┐Żter dans le cas d'un arr´┐Żt "en douceur"
Syntaxe:GracefulShutdownTimeout seconds
D´┐Żfaut:GracefulShutdownTimeout 0
Contexte:configuration du serveur
Statut:MPM
Module:prefork, worker, event
Compatibilit´┐Ż:Disponible dans les versions 2.2 et sup´┐Żrieures

La directive GracefulShutdownTimeout permet de sp´┐Żcifier le temps, en secondes, pendant lequel le serveur va continuer ´┐Ż fonctionner apr´┐Żs avoir re´┐Żu un signal "graceful-stop" ("Arr´┐Żt en douceur"), afin de terminer le traitement des connexions en cours.

D´┐Żfinir cette valeur ´┐Ż z´┐Żro signifie au serveur d'attendre jusqu'´┐Ż ce que toutes les requ´┐Żtes en cours aient ´┐Żt´┐Ż trait´┐Żes.

top

Listen Directive

Description:Les adresses IP et ports sur lesquels le serveur ´┐Żcoute
Syntaxe:Listen [adresse IP:]num´┐Żro port [protocole]
Contexte:configuration du serveur
Statut:MPM
Module:mpm_netware, mpm_winnt, mpmt_os2, prefork, worker, event
Compatibilit´┐Ż:L'argument protocole est support´┐Ż depuis la version 2.1.5

La directive Listen permet de signifier ´┐Ż Apache httpd de ne se mettre ´┐Ż l'´┐Żcoute que sur les adresses IP et ports sp´┐Żcifi´┐Żs ; par d´┐Żfaut, le serveur r´┐Żpond aux requ´┐Żtes en provenance de toutes les interfaces r´┐Żseau. La directive Listen est dor´┐Żnavant requise, et si elle est absente du fichier de configuration, le serveur refusera de d´┐Żmarrer. Ceci constitue un changement par rapport aux versions pr´┐Żc´┐Żdentes d'Apache httpd.

La directive Listen signifie au serveur de n'accepter les requ´┐Żtes entrantes que vers le port ou le couple adresse-port sp´┐Żcifi´┐Ż. Si seulement un port est sp´┐Żcifi´┐Ż, le serveur se met ´┐Ż l'´┐Żcoute sur ce port sur toutes les interfaces r´┐Żseau. Si une adresse IP et un port sont sp´┐Żcifi´┐Żs, le serveur va se mettre ´┐Ż l'´┐Żcoute sur ce port sur l'interface r´┐Żseau correspondant ´┐Ż l'adresse IP.

On peut utiliser autant de directives Listen que n´┐Żcessaire pour sp´┐Żcifier plusieurs adresses et/ou ports ´┐Ż ´┐Żcouter. Le serveur r´┐Żpondra aux requ´┐Żtes vers tous les adresses et ports sp´┐Żcifi´┐Żs.

Par exemple, pour que le serveur accepte les connexions sur les ports 80 et 8000, utilisez :

Listen 80
Listen 8000

Pour que le serveur accepte les connexions sur deux interfaces et ports particuliers, sp´┐Żcifiez :

Listen 192.170.2.1:80
Listen 192.170.2.5:8000

Les adressee IPv6 doivent ´┐Żtre entour´┐Żes de crochets, comme dans l'exemple suivant :

Listen [2001:db8::a00:20ff:fea7:ccea]:80

L'argument optionnel protocole n'est pas n´┐Żcessaire dans la plupart des configurations. S'il est absent, https est la valeur par d´┐Żfaut pour le port 443 et http l'est pour tous les autres ports. L'argument protocole sert ´┐Ż d´┐Żterminer quel module doit traiter une requ´┐Żte, et ´┐Ż appliquer des optimisations sp´┐Żcifiques ´┐Ż certains protocoles ´┐Ż l'aide de la directive AcceptFilter.

La sp´┐Żcification d'un protocole n'est n´┐Żcessaire que si vous utilisez des ports non standards. Par exemple, pour configurer un site en https sur le port 8443 :

Listen 192.170.2.1:8443 https

Condition d'erreur

Plusieurs directives Listen pour les m´┐Żmes adresse IP/port vont provoquer l'envoi d'un message d'erreur Address already in use.

Voir aussi

top

ListenBackLog Directive

Description:Longueur maximale de la liste d'attente des connexions
Syntaxe:ListenBacklog backlog
D´┐Żfaut:ListenBacklog 511
Contexte:configuration du serveur
Statut:MPM
Module:event, mpm_netware, mpm_winnt, mpmt_os2, prefork, worker

La longueur maximale de la liste d'attente des connexions. En g´┐Żn´┐Żral, aucune modification n'est n´┐Żcessaire, ni m´┐Żme souhaitable ; cependant, sur certains syst´┐Żmes, il peut ´┐Żtre n´┐Żcessaire d'en augmenter la valeur en cas d'attaque TCP SYN flood (envoi en masse de requ´┐Żtes SYN pour saturer le serveur). Voir le param´┐Żtre backlog de l'appel syst´┐Żme listen(2).

En fait, l'argument backlog sera souvent limit´┐Ż ´┐Ż une valeur inf´┐Żrieure en fonction du syst´┐Żme d'exploitation. Notez aussi que de nombreux syst´┐Żmes d'exploitation ne tiennent pas vraiment compte de la valeur sp´┐Żcifi´┐Że pour l'argument backlog, mais s'en inspirent seulement (et choisissent en g´┐Żn´┐Żral une valeur sup´┐Żrieure).

top

MaxConnectionsPerChild Directive

Description:Limite le nombre de connexions qu'un processus enfant va traiter au cours de son fonctionnement
Syntaxe:MaxConnectionsPerChild number
D´┐Żfaut:MaxConnectionsPerChild 0
Contexte:configuration du serveur
Statut:MPM
Module:event, mpm_netware, mpm_winnt, mpmt_os2, prefork, worker
Compatibilit´┐Ż:Disponible depuis la version 2.3.9 du serveur HTTP Apache. L'ancien nom MaxRequestsPerChild est encore support´┐Ż.

La directive MaxConnectionsPerChild permet de d´┐Żfinir le nombre maximum de connexions qu'un processus enfant va pouvoir traiter au cours de son fonctionnement. Lorsqu'il a trait´┐Ż MaxConnectionsPerChild connexions, le processus enfant est arr´┐Żt´┐Ż. Si MaxConnectionsPerChild est d´┐Żfinie ´┐Ż 0, il n'y a plus aucune limite sur le nombre de connexions que le processus pourra traiter.

D´┐Żfinir MaxConnectionsPerChild ´┐Ż une valeur non nulle limite la quantit´┐Ż de m´┐Żmoire qu'un processus peut consommer ´┐Ż cause de fuites (accidentelles) de m´┐Żmoire.

top

MaxMemFree Directive

Description:Quantit´┐Ż maximale de m´┐Żmoire que l'allocateur principal est autoris´┐Ż ´┐Ż conserver sans appeler free()
Syntaxe:MaxMemFree KOctets
D´┐Żfaut:MaxMemFree 2048
Contexte:configuration du serveur
Statut:MPM
Module:event, mpm_netware, prefork, worker, mpm_winnt

La directive MaxMemFree permet de d´┐Żfinir le nombre maximum de KOctets libres que tout allocateur est autoris´┐Ż ´┐Ż conserver sans appeler free(). Dans les MPMs thread´┐Żs, chaque thread poss´┐Żde son propre allocateur. Si elle est d´┐Żfinie ´┐Ż 0, la quantit´┐Ż de m´┐Żmoire libre que peut conserver un allocateur est illimit´┐Że.

top

MaxRequestWorkers Directive

Description:Nombre maximum de connexions pouvant ´┐Żtre trait´┐Żes simultan´┐Żment
Syntaxe:MaxRequestWorkers nombre
D´┐Żfaut:Voir ci-dessous pour plus de d´┐Żtails
Contexte:configuration du serveur
Statut:MPM
Module:event, prefork, worker

La directive MaxRequestWorkers permet de fixer le nombre maximum de requ´┐Żtes pouvant ´┐Żtre trait´┐Żes simultan´┐Żment. Si la limite MaxRequestWorkers est atteinte, toute tentative de connexion sera normalement mise dans une file d'attente, et ceci jusqu'´┐Ż un certain nombre d´┐Żpendant de la directive ListenBacklog. Lorsqu'un processus enfant se lib´┐Żrera suite ´┐Ż la fin du traitement d'une requ´┐Żte, la connexion en attente pourra ´┐Żtre trait´┐Że ´┐Ż son tour.

Pour les serveurs non thread´┐Żs (c'est ´┐Ż dire utilisant prefork), la directive MaxRequestWorkers d´┐Żfinit alors le nombre maximum de processus enfants qui pourront ´┐Żtre lanc´┐Żs simultan´┐Żment pour traiter les requ´┐Żtes. La valeur par d´┐Żfaut est 256 ; si vous l'augmentez, vous devez aussi augmenter la valeur de la directive ServerLimit.

Pour les serveur thread´┐Żs et hybrides (utilisant par exemple event ou worker), MaxRequestWorkers d´┐Żfinit alors le nombre total de threads qui seront disponibles pour servir les clients. Dans le cas des MPMs hybrides, la valeur par d´┐Żfaut est 16 (directive ServerLimit) multipli´┐Ż par la valeur 25 (directive ThreadsPerChild). Par cons´┐Żquent, pour affecter ´┐Ż la directive MaxRequestWorkers une valeur qui requiert plus de 16 processus, vous devez aussi augmenter la valeur de la directive ServerLimit.

Le nom de la directive MaxRequestWorkers ´┐Żtait MaxClients avant la version 2.3.13. Cet ancien nom est encore support´┐Ż.

top

MaxSpareThreads Directive

Description:Nombre maximum de threads inactifs
Syntaxe:MaxSpareThreads nombre
D´┐Żfaut:Voir ci-dessous pour plus de d´┐Żtails
Contexte:configuration du serveur
Statut:MPM
Module:event, mpm_netware, mpmt_os2, worker

C'est le nombre maximum de threads inactifs. Les MPMs utilisent cette directive de diff´┐Żrentes mani´┐Żres.

Pour worker, la d´┐Żfinition par d´┐Żfaut est MaxSpareThreads 250. Ce MPM g´┐Żre les threads inactifs au niveau du serveur. Si le serveur poss´┐Żde trop de threads inactifs, des processus enfants seront arr´┐Żt´┐Żs jusqu'´┐Ż ce que le nombre de threads inactifs repasse en dessous de cette limite.

Pour mpm_netware, la d´┐Żfinition par d´┐Żfaut est MaxSpareThreads 100. Comme ce MPM n'ex´┐Żcute qu'un seul processus, le nombre de processus inactifs est surveill´┐Ż au niveau du serveur.

mpmt_os2 fonctionne de mani´┐Żre similaire ´┐Ż mpm_netware. Pour mpmt_os2, la valeur par d´┐Żfaut est 10.

Contraintes

La gamme de valeurs pour MaxSpareThreads est limit´┐Że. Apache httpd corrigera automatiquement cette valeur selon les r´┐Żgles suivantes :

Voir aussi

top

MinSpareThreads Directive

Description:Nombre minimum de threads inactifs qui seront disponibles pour pouvoir traiter les pics de requ´┐Żtes
Syntaxe:MinSpareThreads nombre
D´┐Żfaut:Voir ci-dessous pour plus de d´┐Żtails
Contexte:configuration du serveur
Statut:MPM
Module:event, mpm_netware, mpmt_os2, worker

C'est le nombre minimum de threads inactifs pour ´┐Żtre en mesure de traiter les pics de requ´┐Żtes. Les MPMs utilisent cette directive de diff´┐Żrentes mani´┐Żres.

Avec worker, la d´┐Żfinition par d´┐Żfaut est MinSpareThreads 75, et le nombre de threads inactifs est surveill´┐Ż au niveau du serveur. Si le serveur ne poss´┐Żde pas assez de threads inactifs, des processus enfants sont cr´┐Ż´┐Żs jusqu'´┐Ż ce que le nombre de threads inactifs repasse au dessus de nombre.

Avec mpm_netware, la d´┐Żfinition par d´┐Żfaut est MinSpareThreads 10 et, comme ce MPM n'ex´┐Żcute qu'un seul processus, le nombre de threads est surveill´┐Ż au niveau du serveur.

mpmt_os2 fonctionne de mani´┐Żre similaire ´┐Ż mpm_netware. Pour mpmt_os2, la valeur par d´┐Żfaut est 5.

Voir aussi

top

PidFile Directive

Description:Ficher dans lequel le serveur enregistre l'identificateur de processus du d´┐Żmon
Syntaxe:PidFile nom fichier
D´┐Żfaut:PidFile logs/httpd.pid
Contexte:configuration du serveur
Statut:MPM
Module:event, mpm_winnt, mpmt_os2, prefork, worker

La directive PidFile permet de d´┐Żfinir le ficher dans lequel le serveur enregistre l'identificateur de processus du d´┐Żmon. Si le chemin du fichier n'est pas absolu, il est consid´┐Żr´┐Ż comme relatif au chemin d´┐Żfini par la directive ServerRoot.

Exemple

PidFile /var/run/apache.pid

Il est souvent utile de pouvoir envoyer un signal au serveur afin qu'il ferme et ouvre ´┐Ż nouveau ses journaux d'erreur et de transfert, et recharge son fichier de configuration. Pour ce faire, on envoie un signal SIGHUP (kill -1) ´┐Ż l'identificateur de processus enregistr´┐Ż dans le fichier d´┐Żfini par la directive PidFile.

La directive PidFile fait l'objet des m´┐Żmes avertissements que ceux concernant le chemin d'enregistrement des fichiers journaux et la s´┐Żcurit´┐Ż.

Note

Depuis la version 2 du serveur HTTP Apache, nous recommandons de n'utiliser que le script apache2ctl, ou le script de d´┐Żmarrage fourni avec votre syst´┐Żme d'exploitation pour (re)d´┐Żmarrer ou arr´┐Żter le serveur.

top

ReceiveBufferSize Directive

Description:Taille du tampon TCP en entr´┐Że
Syntaxe:ReceiveBufferSize octets
D´┐Żfaut:ReceiveBufferSize 0
Contexte:configuration du serveur
Statut:MPM
Module:event, mpm_netware, mpm_winnt, mpmt_os2, prefork, worker

Le serveur va fixer la taille du tampon TCP en entr´┐Że au nombre d'octets sp´┐Żcifi´┐Ż.

Si la directive est d´┐Żfinie ´┐Ż 0, le serveur va utiliser la valeur par d´┐Żfaut adopt´┐Że par le syst´┐Żme d'exploitation.

top

ScoreBoardFile Directive

Description:Chemin du fichier o´┐Ż sont stock´┐Żes les donn´┐Żes concernant la coordination des processus enfants
Syntaxe:ScoreBoardFile chemin fichier
D´┐Żfaut:ScoreBoardFile logs/apache_runtime_status
Contexte:configuration du serveur
Statut:MPM
Module:event, mpm_winnt, prefork, worker

Le serveur HTTP Apache utilise un tableau de bord pour la communication entre le processus parent et les processus enfants. Pour faciliter cette communication, certaines architectures n´┐Żcessitent un fichier. En l'absence de cette directive, donc si aucun nom de fichier n'est sp´┐Żcifi´┐Ż, Apache httpd tentera tout d'abord de cr´┐Żer un tableau uniquement en m´┐Żmoire (en utilisant la m´┐Żmoire partag´┐Że anonyme) ; et si il n'y parvient pas, il tentera de cr´┐Żer un fichier sur disque (en utilisant la m´┐Żmoire partag´┐Że ´┐Ż base de fichier). Si cette directive est utilis´┐Że, Apache httpd cr´┐Żera syst´┐Żmatiquement un fichier sur disque.

Exemple

ScoreBoardFile /var/run/apache_runtime_status

Une m´┐Żmoire partag´┐Że sous forme de fichier est utile pour les applications tierces qui n´┐Żcessitent un acc´┐Żs direct au tableau de bord des processus.

Si vous utilisez un ScoreBoardFile, vous pourrez constater une am´┐Żlioration des performances en le pla´┐Żant sur un disque virtuel en RAM. Assurez-vous cependant de tenir compte des m´┐Żmes avertissements que ceux concernant le chemin du fichier journal et la s´┐Żcurit´┐Ż.

Voir aussi

top

SendBufferSize Directive

Description:Taille du tampon TCP en sortie
Syntaxe:SendBufferSize octets
D´┐Żfaut:SendBufferSize 0
Contexte:configuration du serveur
Statut:MPM
Module:event, mpm_netware, mpm_winnt, mpmt_os2, prefork, worker

D´┐Żfinit la taille du tampon TCP en sortie avec le nombre d'octets sp´┐Żcifi´┐Ż. Ceci s'av´┐Żre souvent tr´┐Żs utile pour augmenter les valeurs par d´┐Żfaut standards du pass´┐Ż des syst´┐Żmes d'exploitation pour les transmissions ´┐Ż grande vitesse et haute densit´┐Ż (c'est ´┐Ż dire de l'ordre de 100ms comme sur les liaisons rapides transcontinentales).

Si la directive est d´┐Żfinie ´┐Ż 0, le serveur va utiliser la valeur par d´┐Żfaut adopt´┐Że par le syst´┐Żme d'exploitation.

L'am´┐Żlioration des performances des connexions ´┐Ż grande vitesse et ´┐Ż temps de latence ´┐Żlev´┐Ż, peut n´┐Żcessiter une intervention au niveau de la configuration de votre syst´┐Żme d'exploitation.

Sous certains syst´┐Żmes d'exploitation, la modification du comportement TCP via une augmentation de la valeur de SendBufferSize risque de ne pas ´┐Żtre perceptible, si la directive EnableSendfile n'est pas d´┐Żfinie ´┐Ż OFF. Cette interaction ne s'applique qu'aux fichiers statiques.

top

ServerLimit Directive

Description:Limite sup´┐Żrieure de la d´┐Żfinition du nombre de processus
Syntaxe:ServerLimit nombre
D´┐Żfaut:Voir ci-dessous pour plus de d´┐Żtails
Contexte:configuration du serveur
Statut:MPM
Module:event, prefork, worker

Avec le MPM prefork, cette directive d´┐Żfinit le nombre maximum que l'on peut affecter ´┐Ż la directive MaxRequestWorkers, et ceci pour la dur´┐Że de vie du processus Apache httpd. Avec le MPM worker, cette directive, en combinaison avec ThreadLimit, d´┐Żfinit le nombre maximum que l'on peut affecter ´┐Ż MaxRequestWorkers, et ceci pour la dur´┐Że de vie du processus Apache httpd. Au cours d'un red´┐Żmarrage, vous pouvez modifier la valeur de la directive MaxRequestWorkers, alors que toute tentative de modification de la valeur de la directive ServerLimit sera ignor´┐Że.

Cette directive doit ´┐Żtre utilis´┐Że avec pr´┐Żcaution. Si ServerLimit est d´┐Żfinie ´┐Ż une valeur beaucoup plus grande que n´┐Żcessaire, de la m´┐Żmoire partag´┐Że suppl´┐Żmentaire sera inutilement allou´┐Że. Si ´┐Ż la fois ServerLimit et MaxRequestWorkers poss´┐Żdent des valeurs sup´┐Żrieures ´┐Ż ce que le syst´┐Żme peut supporter, ce dernier peut devenir instable ou Apache httpd peut tout simplement refuser de d´┐Żmarrer.

Avec le MPM prefork, n'utilisez cette directive que si vous devez d´┐Żfinir MaxRequestWorkers ´┐Ż une valeur sup´┐Żrieure ´┐Ż 256 (valeur par d´┐Żfaut). N'affectez pas ´┐Ż la directive ServerLimit une valeur sup´┐Żrieure ´┐Ż celle que vous avez pr´┐Żvu d'affecter ´┐Ż la directive MaxRequestWorkers.

Avec worker, n'utilisez cette directive que si la d´┐Żfinition de vos directives MaxRequestWorkers et ThreadsPerChild n´┐Żcessitent plus de 16 processus serveurs (valeur par d´┐Żfaut). N'affectez pas ´┐Ż la directive ServerLimit une valeur sup´┐Żrieure au nombre de processus requis pour la d´┐Żfinition des directives MaxRequestWorkers et ThreadsPerChild.

Note

Il existe une limite de ServerLimit 20000 cod´┐Że en dur dans le serveur (200000 pour le MPM prefork). Ceci est cens´┐Ż ´┐Żviter les effets d´┐Żsastreux que pourrait provoquer une faute de frappe. Pour d´┐Żpasser cette limite, vous devez modifier la valeur de MAX_SERVER_LIMIT dans le fichier source du mpm et recompiler le serveur.

Voir aussi

top

StartServers Directive

Description:Nombre de processus enfants du serveur cr´┐Ż´┐Żs au d´┐Żmarrage
Syntaxe:StartServers nombre
D´┐Żfaut:Voir ci-dessous pour plus de d´┐Żtails
Contexte:configuration du serveur
Statut:MPM
Module:event, mpmt_os2, prefork, worker

La directive StartServers permet de d´┐Żfinir le nombre de processus enfants du serveur cr´┐Ż´┐Żs au d´┐Żmarrage. Comme le nombre de processus est contr´┐Żl´┐Ż dynamiquement en fonction de la charge (voir MinSpareThreads, MaxSpareThreads, MinSpareServers, MaxSpareServers), il n'est en g´┐Żn´┐Żral pas n´┐Żcessaire d'ajuster ce param´┐Żtre.

La valeur par d´┐Żfaut diff´┐Żre d'un MPM ´┐Ż l'autre. Pour worker, la d´┐Żfinition par d´┐Żfaut est StartServers 3 ; la valeur par d´┐Żfaut est 5 pour prefork et 2 pour mpmt_os2.

top

StartThreads Directive

Description:Nombre de threads cr´┐Ż´┐Żs au d´┐Żmarrage
Syntaxe:StartThreads nombre
D´┐Żfaut:Voir ci-dessous pour plus de d´┐Żtails
Contexte:configuration du serveur
Statut:MPM
Module:mpm_netware

C'est le nombre de threads cr´┐Ż´┐Żs au d´┐Żmarrage du serveur. Comme le nombre de threads est contr´┐Żl´┐Ż dynamiquement en fonction de la charge (voir MinSpareThreads, MaxSpareThreads, MinSpareServers, MaxSpareServers), il n'est en g´┐Żn´┐Żral pas n´┐Żcessaire d'ajuster ce param´┐Żtre.

Pour mpm_netware, la d´┐Żfinition par d´┐Żfaut est StartThreads 50 et, comme il n'y a qu'un processus, il s'agit du nombre total de threads cr´┐Ż´┐Żs au d´┐Żmarrage pour servir les requ´┐Żtes.

top

ThreadLimit Directive

Description:Le nombre de threads maximum que l'on peut d´┐Żfinir par processus enfant
Syntaxe:ThreadLimit nombre
D´┐Żfaut:Voir ci-dessous pour plus de d´┐Żtails
Contexte:configuration du serveur
Statut:MPM
Module:event, mpm_winnt, worker

Cette directive permet de d´┐Żfinir le nombre maximum que l'on peut affecter ´┐Ż la directive ThreadsPerChild pour la dur´┐Że de vie du processus Apache httpd. La directive ThreadsPerChild peut ´┐Żtre modifi´┐Że au cours d'un red´┐Żmarrage jusqu'´┐Ż la valeur de la directive ThreadLimit, mais toute tentative de modification de la directive ThreadLimit au cours d'un red´┐Żmarrage sera ignor´┐Że.

L'utilisation de cette directive doit faire l'objet de pr´┐Żcautions particuli´┐Żres. Si ThreadLimit est d´┐Żfinie ´┐Ż une valeur tr´┐Żs sup´┐Żrieure ´┐Ż la directive ThreadsPerChild, de la m´┐Żmoire partag´┐Że suppl´┐Żmentaire sera inutilement allou´┐Że. Si les directives ThreadLimit et ThreadsPerChild sont d´┐Żfinies ´┐Ż des valeurs sup´┐Żrieures ´┐Ż ce que le syst´┐Żme peut supporter, ce dernier peut devenir instable, ou Apache httpd peut tout simplement refuser de d´┐Żmarrer. Ne d´┐Żfinissez pas cette directive ´┐Ż une valeur sup´┐Żrieure ´┐Ż la valeur maximale que vous pensez affecter ´┐Ż la directive ThreadsPerChild pour le processus Apache httpd en cours d'ex´┐Żcution.

La valeur par d´┐Żfaut de la directive ThreadLimit est 1920 avec mpm_winnt, et 64 avec les autres MPMs.

Note

Il existe une limite de ThreadLimit 20000 (ou ThreadLimit 100000 avec event, ThreadLimit 15000 avec mpm_winnt) cod´┐Że en dur dans le serveur. Ceci est cens´┐Ż ´┐Żviter les effets d´┐Żsastreux que pourrait provoquer une faute de frappe. Pour d´┐Żpasser cette limite, vous devez modifier la valeur de MAX_THREAD_LIMIT dans le fichier source du mpm et recompiler le serveur.

top

ThreadsPerChild Directive

Description:Nombre de threads cr´┐Ż´┐Żs par chaque processus enfant
Syntaxe:ThreadsPerChild nombre
D´┐Żfaut:Voir ci-dessous pour plus de d´┐Żtails
Contexte:configuration du serveur
Statut:MPM
Module:event, mpm_winnt, worker

Cette directive permet de d´┐Żfinir le nombre de threads que va cr´┐Żer chaque processus enfant. Un processus enfant cr´┐Że ces threads au d´┐Żmarrage et n'en cr´┐Że plus d'autres par la suite. Si l'on utilise un MPM comme mpm_winnt qui ne lance qu'un processus enfant, ce nombre doit ´┐Żtre suffisamment grand pour supporter la charge du serveur. Avec un MPM comme worker qui lance plusieurs processus enfants, c'est le nombre total de threads qui doit ´┐Żtre suffisamment grand pour supporter la charge du serveur.

La valeur par d´┐Żfaut de la directive ThreadsPerChild est 64 avec mpm_winnt, et 25 avec les autres MPMs.

top

ThreadStackSize Directive

Description:La taille en octets de la pile qu'utilisent les threads qui traitent les connexions clients
Syntaxe:ThreadStackSize taille
D´┐Żfaut:65536 sous NetWare; varie en fonction des autres syst´┐Żmes d'exploitation
Contexte:configuration du serveur
Statut:MPM
Module:event, mpm_netware, mpmt_os2, mpm_winnt, worker, event
Compatibilit´┐Ż:Disponible dans les versions 2.1 et sup´┐Żrieures du serveur HTTP Apache

La directive ThreadStackSize permet de d´┐Żfinir la taille de la pile (pour les donn´┐Żes propres) qu'utilisent les threads qui traitent les connexions clients en faisant appel ´┐Ż des modules. Dans la plupart des cas, la valeur par d´┐Żfaut de la taille de la pile du syst´┐Żme d'exploitation convient, mais il existe certaines situations o´┐Ż il peut s'av´┐Żrer n´┐Żcessaire de l'ajuster :

Il est recommand´┐Ż de ne pas r´┐Żduire ThreadStackSize, ´┐Ż moins qu'un grand nombre de threads par processus enfant ne soit n´┐Żcessaire. Sur certaines plates-formes (y compris Linux), une valeur de 128000 est d´┐Żj´┐Ż trop basse et provoque des crashes avec certains modules courants.

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.