|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
<html xmlns="http://www.w3.org/1999/xhtml" lang="fr" xml:lang="fr"><head>
|
|
Packit |
90a5c9 |
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type" />
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
|
|
Packit |
90a5c9 |
This file is generated from xml source: DO NOT EDIT
|
|
Packit |
90a5c9 |
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
|
|
Packit |
90a5c9 |
-->
|
|
Packit |
90a5c9 |
<title>mpm_common - Serveur HTTP Apache Version 2.4</title>
|
|
Packit |
90a5c9 |
<link href="../style/css/manual.css" rel="stylesheet" media="all" type="text/css" title="Main stylesheet" />
|
|
Packit |
90a5c9 |
<link href="../style/css/manual-loose-100pc.css" rel="alternate stylesheet" media="all" type="text/css" title="No Sidebar - Default font size" />
|
|
Packit |
90a5c9 |
<link href="../style/css/manual-print.css" rel="stylesheet" media="print" type="text/css" /><link rel="stylesheet" type="text/css" href="../style/css/prettify.css" />
|
|
Packit |
90a5c9 |
<script src="../style/scripts/prettify.min.js" type="text/javascript">
|
|
Packit |
90a5c9 |
</script>
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
<link href="../images/favicon.ico" rel="shortcut icon" /></head>
|
|
Packit |
90a5c9 |
<body>
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
Modules | Directives | FAQ | Glossaire | Plan du site
|
|
Packit |
90a5c9 |
Serveur HTTP Apache Version 2.4
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
Apache > Serveur HTTP > Documentation > Version 2.4 > Modules
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
Apache MPM : Directives Communes
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
Langues Disponibles: de |
|
|
Packit |
90a5c9 |
en |
|
|
Packit |
90a5c9 |
fr |
|
|
Packit |
90a5c9 |
ja |
|
|
Packit |
90a5c9 |
tr
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
Description: | Une série de directives implémentées par plusieurs |
---|
|
|
Packit |
90a5c9 |
modules multi-processus (MPM)
|
|
Packit |
90a5c9 |
Statut:MPM
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
Directives
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
CoreDumpDirectory
|
|
Packit |
90a5c9 |
EnableExceptionHook
|
|
Packit |
90a5c9 |
GracefulShutdownTimeout
|
|
Packit |
90a5c9 |
Listen
|
|
Packit |
90a5c9 |
ListenBackLog
|
|
Packit |
90a5c9 |
ListenCoresBucketsRatio
|
|
Packit |
90a5c9 |
MaxConnectionsPerChild
|
|
Packit |
90a5c9 |
MaxMemFree
|
|
Packit |
90a5c9 |
MaxRequestWorkers
|
|
Packit |
90a5c9 |
MaxSpareThreads
|
|
Packit |
90a5c9 |
MinSpareThreads
|
|
Packit |
90a5c9 |
PidFile
|
|
Packit |
90a5c9 |
ReceiveBufferSize
|
|
Packit |
90a5c9 |
ScoreBoardFile
|
|
Packit |
90a5c9 |
SendBufferSize
|
|
Packit |
90a5c9 |
ServerLimit
|
|
Packit |
90a5c9 |
StartServers
|
|
Packit |
90a5c9 |
StartThreads
|
|
Packit |
90a5c9 |
ThreadLimit
|
|
Packit |
90a5c9 |
ThreadsPerChild
|
|
Packit |
90a5c9 |
ThreadStackSize
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
Traitement des bugsVoir aussi
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
Commentaires
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
Description:Le répertoire dans lequel le serveur HTTP Apache va tenter de se
|
|
Packit |
90a5c9 |
positionner avant d'effectuer un vidage mémoire
|
|
Packit |
90a5c9 |
Syntaxe:CoreDumpDirectory répertoire
|
|
Packit |
90a5c9 |
Défaut:Voir ci-dessous pour le répertoire par défaut
|
|
Packit |
90a5c9 |
Contexte:configuration globale
|
|
Packit |
90a5c9 |
Statut:MPM
|
|
Packit |
90a5c9 |
Module:event , worker , prefork
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
Cette directive permet de définir le répertoire dans lequel
|
|
Packit |
90a5c9 |
Apache httpd va tenter de se positionner avant d'effectuer un vidage
|
|
Packit |
90a5c9 |
mémoire sur disque.
|
|
Packit |
90a5c9 |
Si votre système d'exploitation est configuré pour créer des
|
|
Packit |
90a5c9 |
fichiers de vidage mémoire dans le répertoire de travail des
|
|
Packit |
90a5c9 |
processus qui se sont crashés,
|
|
Packit |
90a5c9 |
CoreDumpDirectory est nécessaire pour
|
|
Packit |
90a5c9 |
définir un répertoire de travail autre que le répertoire par défaut
|
|
Packit |
90a5c9 |
ServerRoot , ce répertoire de
|
|
Packit |
90a5c9 |
travail ne devant pas être accessible en écriture par l'utilisateur sous
|
|
Packit |
90a5c9 |
lequel le serveur s'exécute.
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
Si vous avez besoin d'un vidage mémoire pour le débogage, vous
|
|
Packit |
90a5c9 |
pouvez utiliser cette directive pour le placer à un endroit
|
|
Packit |
90a5c9 |
différent. Cette directive n'a aucun effet si votre système
|
|
Packit |
90a5c9 |
d'exploitation n'est pas configuré pour créer des
|
|
Packit |
90a5c9 |
fichiers de vidage mémoire dans le répertoire de travail des
|
|
Packit |
90a5c9 |
processus qui se sont crashés.
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
Vidages mémoire sous Linux
|
|
Packit |
90a5c9 |
Si Apache httpd est démarré sous l'utilisateur root puis bascule vers
|
|
Packit |
90a5c9 |
un autre utilisateur, le noyau Linux désactive les
|
|
Packit |
90a5c9 |
vidages mémoire, même si le répertoire est accessible en écriture au
|
|
Packit |
90a5c9 |
processus. Apache httpd (versions 2.0.46 et supérieures) réactive les
|
|
Packit |
90a5c9 |
vidages mémoire sous Linux 2.4 et au delà, mais seulement si vous
|
|
Packit |
90a5c9 |
définissez une directive CoreDumpDirectory .
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
Vidages mémoire sous BSD
|
|
Packit |
90a5c9 |
Pour activer le vidage mémoire des exécutables suid sur les
|
|
Packit |
90a5c9 |
systèmes de style BSD (comme FreeBSD), définissez
|
|
Packit |
90a5c9 |
kern.sugid_coredump à 1.
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
Signaux spécifiques
|
|
Packit |
90a5c9 |
CoreDumpDirectory n'est traité qu'à la
|
|
Packit |
90a5c9 |
reception d'un certain nombre de signaux , SIGFPE, SIGILL, SIGABORT,
|
|
Packit |
90a5c9 |
SIGSEGV, et SIGBUS.
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
Sur certains systèmes d'exploitation, SIGQUIT provoque aussi un
|
|
Packit |
90a5c9 |
vidage mémoire, mais n'est pas traité par les directives
|
|
Packit |
90a5c9 |
CoreDumpDirectory ou
|
|
Packit |
90a5c9 |
EnableExceptionHook , si bien que la
|
|
Packit |
90a5c9 |
définition du répertoire d'enregistrement du vidage mémoire est
|
|
Packit |
90a5c9 |
entièrement dévolue au système d'exploitation.
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
Description:Active un hook ("point d'accrochage logiciel") qui exécute des
|
|
Packit |
90a5c9 |
gestionnaires d'exception après un crash
|
|
Packit |
90a5c9 |
Syntaxe:EnableExceptionHook On|Off
|
|
Packit |
90a5c9 |
Défaut:EnableExceptionHook Off
|
|
Packit |
90a5c9 |
Contexte:configuration globale
|
|
Packit |
90a5c9 |
Statut:MPM
|
|
Packit |
90a5c9 |
Module:event , worker , prefork
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
Pour des raisons de sécurité, cette directive n'est disponible
|
|
Packit |
90a5c9 |
que si la compilation du serveur a été configurée avec l'option
|
|
Packit |
90a5c9 |
--enable-exception-hook . Elle permet d'activer un hook
|
|
Packit |
90a5c9 |
("point d'accrochage logiciel")
|
|
Packit |
90a5c9 |
qui autorise certains modules externes à effectuer un branchement et
|
|
Packit |
90a5c9 |
accomplir telle ou telle action après le crash d'un processus
|
|
Packit |
90a5c9 |
enfant.
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
Deux modules, mod_whatkilledus et
|
|
Packit |
90a5c9 |
mod_backtrace utilisent ce hook. Veuillez vous
|
|
Packit |
90a5c9 |
référer à la page EnableExceptionHook de Jeff Trawick pour plus
|
|
Packit |
90a5c9 |
d'informations à leur sujet.
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
Description:Spécifie le délai maximum après lequel le serveur va
|
|
Packit |
90a5c9 |
s'arrêter dans le cas d'un arrêt "en douceur"
|
|
Packit |
90a5c9 |
Syntaxe:GracefulShutdownTimeout seconds
|
|
Packit |
90a5c9 |
Défaut:GracefulShutdownTimeout 0
|
|
Packit |
90a5c9 |
Contexte:configuration globale
|
|
Packit |
90a5c9 |
Statut:MPM
|
|
Packit |
90a5c9 |
Module:event , worker , prefork
|
|
Packit |
90a5c9 |
Compatibilité:Disponible dans les versions 2.2 et supérieures
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
La directive GracefulShutdownTimeout
|
|
Packit |
90a5c9 |
permet de spécifier le temps, en secondes, pendant lequel le serveur
|
|
Packit |
90a5c9 |
va continuer à fonctionner après avoir reçu un signal
|
|
Packit |
90a5c9 |
"graceful-stop" ("Arrêt en douceur"), afin de terminer le traitement
|
|
Packit |
90a5c9 |
des connexions en cours.
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
Définir cette valeur à zéro signifie au serveur d'attendre
|
|
Packit |
90a5c9 |
jusqu'à ce que toutes les requêtes en cours aient été traitées.
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
Description:Les adresses IP et ports sur lesquels le serveur écoute
|
|
Packit |
90a5c9 |
Syntaxe:Listen [adresse IP:]numéro port
|
|
Packit |
90a5c9 |
[protocole]
|
|
Packit |
90a5c9 |
Contexte:configuration globale
|
|
Packit |
90a5c9 |
Statut:MPM
|
|
Packit |
90a5c9 |
Module:event , worker , prefork , mpm_winnt , mpm_netware , mpmt_os2
|
|
Packit |
90a5c9 |
Compatibilité:L'argument protocole est supporté depuis la version
|
|
Packit |
90a5c9 |
2.1.5
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
La directive Listen permet de signifier à
|
|
Packit |
90a5c9 |
Apache httpd de ne se mettre à l'écoute que sur les adresses IP et ports spécifiés ; par
|
|
Packit |
90a5c9 |
défaut, le serveur répond aux requêtes en provenance de toutes les
|
|
Packit |
90a5c9 |
interfaces réseau. La directive Listen est
|
|
Packit |
90a5c9 |
dorénavant requise, et si elle est absente du fichier de
|
|
Packit |
90a5c9 |
configuration, le serveur refusera de démarrer. Ceci constitue un
|
|
Packit |
90a5c9 |
changement par rapport aux versions précédentes d'Apache httpd.
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
La directive Listen signifie au serveur de
|
|
Packit |
90a5c9 |
n'accepter les requêtes entrantes que vers le port ou le couple
|
|
Packit |
90a5c9 |
adresse-port spécifié. Si seulement un port est spécifié, le serveur
|
|
Packit |
90a5c9 |
se met à l'écoute sur ce port sur toutes les interfaces réseau. Si une adresse IP
|
|
Packit |
90a5c9 |
et un port sont spécifiés, le serveur va se mettre à l'écoute sur ce port sur
|
|
Packit |
90a5c9 |
l'interface réseau correspondant à l'adresse IP.
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
On peut utiliser autant de directives
|
|
Packit |
90a5c9 |
Listen que nécessaire pour spécifier
|
|
Packit |
90a5c9 |
plusieurs adresses et/ou ports à écouter. Le serveur répondra aux
|
|
Packit |
90a5c9 |
requêtes vers tous les adresses et ports spécifiés.
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
Par exemple, pour que le serveur accepte les connexions sur les
|
|
Packit |
90a5c9 |
ports 80 et 8000, utilisez :
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
Listen 80
|
|
Packit |
90a5c9 |
Listen 8000
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
Pour que le serveur accepte les connexions sur deux interfaces et
|
|
Packit |
90a5c9 |
ports particuliers, spécifiez :
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
Listen 192.170.2.1:80
|
|
Packit |
90a5c9 |
Listen 192.170.2.5:8000
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
Les adressee IPv6 doivent être entourées de crochets, comme dans
|
|
Packit |
90a5c9 |
l'exemple suivant :
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
Listen [2001:db8::a00:20ff:fea7:ccea]:80
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
L'argument optionnel protocole n'est pas nécessaire
|
|
Packit |
90a5c9 |
dans la plupart des configurations. S'il est absent,
|
|
Packit |
90a5c9 |
https est la valeur par défaut pour le port 443 et
|
|
Packit |
90a5c9 |
http l'est pour tous les autres ports. L'argument
|
|
Packit |
90a5c9 |
protocole sert à déterminer quel module doit traiter une requête, et
|
|
Packit |
90a5c9 |
à appliquer des optimisations spécifiques à certains protocoles à
|
|
Packit |
90a5c9 |
l'aide de la directive AcceptFilter .
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
La spécification d'un protocole n'est nécessaire que si vous
|
|
Packit |
90a5c9 |
utilisez des ports non standards. Par exemple, pour configurer un
|
|
Packit |
90a5c9 |
site en https sur le port 8443 :
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
Listen 192.170.2.1:8443 https
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
Condition d'erreur
|
|
Packit |
90a5c9 |
Plusieurs directives Listen pour les mêmes
|
|
Packit |
90a5c9 |
adresse IP/port vont provoquer l'envoi d'un message d'erreur
|
|
Packit |
90a5c9 |
Address already in use .
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
Voir aussi
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
Problèmes avec DNS
|
|
Packit |
90a5c9 |
Définition des adresses et ports
|
|
Packit |
90a5c9 |
qu'utilise le serveur HTTP Apache
|
|
Packit |
90a5c9 |
Autre
|
|
Packit |
90a5c9 |
discussion à propos du message d'erreur Address already in
|
|
Packit |
90a5c9 |
use, citant d'autres causes possibles.
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
Description:Longueur maximale de la liste d'attente des
|
|
Packit |
90a5c9 |
connexions
|
|
Packit |
90a5c9 |
Syntaxe:ListenBacklog backlog
|
|
Packit |
90a5c9 |
Défaut:ListenBacklog 511
|
|
Packit |
90a5c9 |
Contexte:configuration globale
|
|
Packit |
90a5c9 |
Statut:MPM
|
|
Packit |
90a5c9 |
Module:event , worker , prefork , mpm_winnt , mpm_netware , mpmt_os2
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
La longueur maximale de la liste d'attente des connexions. En
|
|
Packit |
90a5c9 |
général, aucune modification n'est nécessaire, ni même souhaitable ;
|
|
Packit |
90a5c9 |
cependant, sur certains systèmes, il peut être nécessaire
|
|
Packit |
90a5c9 |
d'en augmenter la valeur en cas d'attaque TCP SYN flood (envoi en
|
|
Packit |
90a5c9 |
masse de requêtes SYN pour saturer le serveur). Voir le paramètre
|
|
Packit |
90a5c9 |
backlog de l'appel système listen(2) .
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
En fait, l'argument backlog sera souvent limité à une valeur
|
|
Packit |
90a5c9 |
inférieure en fonction du système d'exploitation. Notez aussi que de
|
|
Packit |
90a5c9 |
nombreux systèmes d'exploitation ne tiennent pas vraiment compte de
|
|
Packit |
90a5c9 |
la valeur spécifiée pour l'argument backlog, mais s'en inspirent
|
|
Packit |
90a5c9 |
seulement (et choisissent en général une valeur supérieure).
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
Description:Rapport entre le nombre de coeurs de processeur activés et
|
|
Packit |
90a5c9 |
le nombre de segments d'écoute
|
|
Packit |
90a5c9 |
Syntaxe:ListenCoresBucketsRatio ratio
|
|
Packit |
90a5c9 |
Défaut:ListenCoresBucketsRatio 0 (disabled)
|
|
Packit |
90a5c9 |
Contexte:configuration globale
|
|
Packit |
90a5c9 |
Statut:MPM
|
|
Packit |
90a5c9 |
Module:event , worker , prefork
|
|
Packit |
90a5c9 |
Compatibilité:Disponible à partir de la version 2.4.13 du serveur HTTP
|
|
Packit |
90a5c9 |
Apache, avec un noyau supportant l'option de socket
|
|
Packit |
90a5c9 |
SO_REUSEPORT , et distribuant uniformément les nouvelles
|
|
Packit |
90a5c9 |
connexions aux sockets d'écoute des processus (ou threads) qui
|
|
Packit |
90a5c9 |
l'utilisent (par exemple Linux versions 3.9 et ultérieures, mais pas
|
|
Packit |
90a5c9 |
l'implémentation courante de SO_REUSEPORT par les
|
|
Packit |
90a5c9 |
plateformes de type BSD.
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
Vous pouvez utiliser la directive
|
|
Packit |
90a5c9 |
ListenCoresBucketsRatio pour spécifier un
|
|
Packit |
90a5c9 |
ratio entre le nombre de coeurs de CPU activés et le
|
|
Packit |
90a5c9 |
nombre de segments d'écoute (listeners' buckets) souhaités ; le
|
|
Packit |
90a5c9 |
serveur HTTP Apache va alors créernum_cpu_cores / ratio
|
|
Packit |
90a5c9 |
segments d'écoute, chacun contenant son propre socket d'écoute
|
|
Packit |
90a5c9 |
Listen sur le ou les mêmes ports ; chaque
|
|
Packit |
90a5c9 |
processus enfant sera associé à un seul segment d'écoute (avec une
|
|
Packit |
90a5c9 |
distribution de type round-robin des segments à la création des
|
|
Packit |
90a5c9 |
processus enfants).
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
Définition du terme coeur de CPU activé ("online")
|
|
Packit |
90a5c9 |
Sous Linux et BSD, un coeur de CPU peut être activé ou désactivé si Hotplug
|
|
Packit |
90a5c9 |
a été configuré ; la directive
|
|
Packit |
90a5c9 |
ListenCoresBucketsRatio doit donc tenir compte de ce
|
|
Packit |
90a5c9 |
paramètre pour calculer le nombre de segments d'écoute à créer.
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
La directive ListenCoresBucketsRatio peut
|
|
Packit |
90a5c9 |
améliorer le support de la montée en charge lorsque l'arrivée de
|
|
Packit |
90a5c9 |
nouvelles connexions est/devient un goulot d'étranglement. Le test
|
|
Packit |
90a5c9 |
de cette fonctionnalité avec des machines possédant un nombre de
|
|
Packit |
90a5c9 |
coeurs de CPU important a permit de constater une amélioration des
|
|
Packit |
90a5c9 |
performances significative et des temps de réponse plus courts.
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
Pour que cette fonctionnalité soit activée, le nombre de coeurs
|
|
Packit |
90a5c9 |
de CPU doit être égal au moins au double du ratio
|
|
Packit |
90a5c9 |
spécifié. Si vous spécifiez la valeur recommandée pour
|
|
Packit |
90a5c9 |
ratio, à savoir 8 , le nombre minimum de
|
|
Packit |
90a5c9 |
coeurs de processeurs disponibles sera alors de 16 . La valeur
|
|
Packit |
90a5c9 |
optimale de ratio permettant d'obtenir des performances maximales
|
|
Packit |
90a5c9 |
doit être calculée pour chaque système cible, en testant plusieurs valeurs
|
|
Packit |
90a5c9 |
et en observant les résultats.
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
Cette directive influence le calcul des valeurs limites inférieures de
|
|
Packit |
90a5c9 |
MinSpareThreads et MaxSpareThreads . En effet, pour accepter les
|
|
Packit |
90a5c9 |
connexions de manière optimale, le nombre de processus enfants doit être un
|
|
Packit |
90a5c9 |
multiple du nombre de segments d'écoute.
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
Cas où plusieurs Listen ers ou serveurs HTTP
|
|
Packit |
90a5c9 |
Apache partagent la même adresse IP et port
|
|
Packit |
90a5c9 |
La définition de l'option SO_REUSEPORT pour les sockets
|
|
Packit |
90a5c9 |
d'écoute permet à plusieurs processus (partageant le même EUID ,
|
|
Packit |
90a5c9 |
par exemple root ) de se rattacher à la même adresse IP et port,
|
|
Packit |
90a5c9 |
sans obtenir l'erreur de rattachement que le système génère habituellement
|
|
Packit |
90a5c9 |
lorsque ce cas se produit.
|
|
Packit |
90a5c9 |
Cela signifie aussi que plusieurs instances d'Apache httpd configurées
|
|
Packit |
90a5c9 |
avec le même IP:port et avec une valeur
|
|
Packit |
90a5c9 |
ListenCoresBucketsRatio positive pourraient démarrer
|
|
Packit |
90a5c9 |
sans erreur, et fonctionner ensuite avec une répartition uniforme des
|
|
Packit |
90a5c9 |
connexions entrantes sur ces différentes instances (ce n'est PAS une
|
|
Packit |
90a5c9 |
recommandation et ne constitue pas un usage approprié à tous les cas, mais
|
|
Packit |
90a5c9 |
juste un avertissement sur le fait qu'un véritable problème de rattachement
|
|
Packit |
90a5c9 |
multiple à un IP:port pourrait alors être occulté).
|
|
Packit |
90a5c9 |
Au sein d'une même instance, Apache httpd vérifie la présence de
|
|
Packit |
90a5c9 |
directives Listen multiples avec la même adresse IP
|
|
Packit |
90a5c9 |
(ou nom d'hôte) et le même port, et refuse de démarrer si c'est le cas, ce
|
|
Packit |
90a5c9 |
qui permet d'éviter la création de segments d'écoute dupliqués qui seraient
|
|
Packit |
90a5c9 |
du coup inutiles et affecteraient les performances. Cependant, il ne peut
|
|
Packit |
90a5c9 |
pas (et n'essaiera pas de le faire) intercepter tous les cas possibles de
|
|
Packit |
90a5c9 |
recouvrement (comme un nom d'hôte correspondant à une adresse IP utilisée
|
|
Packit |
90a5c9 |
quelque part ailleurs).
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
Description:Limite le nombre de connexions qu'un processus enfant va
|
|
Packit |
90a5c9 |
traiter au cours de son fonctionnement
|
|
Packit |
90a5c9 |
Syntaxe:MaxConnectionsPerChild number
|
|
Packit |
90a5c9 |
Défaut:MaxConnectionsPerChild 0
|
|
Packit |
90a5c9 |
Contexte:configuration globale
|
|
Packit |
90a5c9 |
Statut:MPM
|
|
Packit |
90a5c9 |
Module:event , worker , prefork , mpm_winnt , mpm_netware , mpmt_os2
|
|
Packit |
90a5c9 |
Compatibilité:Disponible depuis la version 2.3.9 du serveur HTTP
|
|
Packit |
90a5c9 |
Apache. L'ancien nom MaxRequestsPerChild est encore
|
|
Packit |
90a5c9 |
supporté.
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
La directive MaxConnectionsPerChild permet de
|
|
Packit |
90a5c9 |
définir le nombre maximum de connexions qu'un processus enfant va
|
|
Packit |
90a5c9 |
pouvoir traiter au cours de son fonctionnement. Lorsqu'il a traité
|
|
Packit |
90a5c9 |
MaxConnectionsPerChild connexions, le processus
|
|
Packit |
90a5c9 |
enfant est arrêté. Si MaxConnectionsPerChild est
|
|
Packit |
90a5c9 |
définie à 0 , il n'y a plus aucune limite sur le nombre
|
|
Packit |
90a5c9 |
de connexions que le processus pourra traiter.
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
Définir MaxConnectionsPerChild à une valeur
|
|
Packit |
90a5c9 |
non nulle limite la quantité de mémoire qu'un processus peut
|
|
Packit |
90a5c9 |
consommer à cause de fuites (accidentelles) de mémoire.
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
Description:Quantité maximale de mémoire que l'allocateur principal est
|
|
Packit |
90a5c9 |
autorisé à conserver sans appeler free()
|
|
Packit |
90a5c9 |
Syntaxe:MaxMemFree KOctets
|
|
Packit |
90a5c9 |
Défaut:MaxMemFree 2048
|
|
Packit |
90a5c9 |
Contexte:configuration globale
|
|
Packit |
90a5c9 |
Statut:MPM
|
|
Packit |
90a5c9 |
Module:event , worker , prefork , mpm_winnt , mpm_netware
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
La directive MaxMemFree permet de définir
|
|
Packit |
90a5c9 |
le nombre maximum de KOctets libres que tout allocateur est
|
|
Packit |
90a5c9 |
autorisé à conserver sans appeler free() . Dans les MPMs
|
|
Packit |
90a5c9 |
threadés, chaque thread possède son propre allocateur. Si elle est
|
|
Packit |
90a5c9 |
définie à 0, la quantité de mémoire libre que peut conserver un
|
|
Packit |
90a5c9 |
allocateur est illimitée.
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
Description:Nombre maximum de connexions pouvant être traitées
|
|
Packit |
90a5c9 |
simultanément
|
|
Packit |
90a5c9 |
Syntaxe:MaxRequestWorkers nombre
|
|
Packit |
90a5c9 |
Défaut:Voir ci-dessous pour plus de détails
|
|
Packit |
90a5c9 |
Contexte:configuration globale
|
|
Packit |
90a5c9 |
Statut:MPM
|
|
Packit |
90a5c9 |
Module:event , worker , prefork
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
La directive MaxRequestWorkers permet de fixer le
|
|
Packit |
90a5c9 |
nombre maximum de requêtes pouvant être traitées simultanément.
|
|
Packit |
90a5c9 |
Si la limite MaxRequestWorkers est atteinte, toute
|
|
Packit |
90a5c9 |
tentative de connexion sera normalement mise dans une file
|
|
Packit |
90a5c9 |
d'attente, et ceci jusqu'à un certain nombre dépendant de la
|
|
Packit |
90a5c9 |
directive ListenBacklog .
|
|
Packit |
90a5c9 |
Lorsqu'un processus enfant se libèrera suite à la fin du traitement
|
|
Packit |
90a5c9 |
d'une requête, la connexion en attente pourra être traitée à son
|
|
Packit |
90a5c9 |
tour.
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
Pour les serveurs non threadés (c'est à dire utilisant
|
|
Packit |
90a5c9 |
prefork ), la directive
|
|
Packit |
90a5c9 |
MaxRequestWorkers définit alors le nombre maximum de
|
|
Packit |
90a5c9 |
processus enfants qui pourront être lancés simultanément pour
|
|
Packit |
90a5c9 |
traiter les requêtes. La valeur par défaut est 256 ; si
|
|
Packit |
90a5c9 |
vous l'augmentez, vous devez aussi augmenter la valeur de la
|
|
Packit |
90a5c9 |
directive ServerLimit .
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
Pour les serveur threadés et hybrides (utilisant par
|
|
Packit |
90a5c9 |
exemple event ou worker ),
|
|
Packit |
90a5c9 |
MaxRequestWorkers définit alors le nombre total de
|
|
Packit |
90a5c9 |
threads qui seront disponibles pour servir les clients. Dans le
|
|
Packit |
90a5c9 |
cas des MPMs hybrides, la valeur par défaut est 16
|
|
Packit |
90a5c9 |
(directive ServerLimit ) multiplié par la valeur
|
|
Packit |
90a5c9 |
25 (directive ThreadsPerChild ). Par conséquent, pour affecter à la
|
|
Packit |
90a5c9 |
directive MaxRequestWorkers une valeur qui requiert
|
|
Packit |
90a5c9 |
plus de 16 processus, vous devez aussi augmenter la valeur de la
|
|
Packit |
90a5c9 |
directive ServerLimit .
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
Le nom de la directive MaxRequestWorkers
|
|
Packit |
90a5c9 |
était MaxClients avant la version 2.3.13. Cet
|
|
Packit |
90a5c9 |
ancien nom est encore supporté.
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
Description:Nombre maximum de threads inactifs
|
|
Packit |
90a5c9 |
Syntaxe:MaxSpareThreads nombre
|
|
Packit |
90a5c9 |
Défaut:Voir ci-dessous pour plus de détails
|
|
Packit |
90a5c9 |
Contexte:configuration globale
|
|
Packit |
90a5c9 |
Statut:MPM
|
|
Packit |
90a5c9 |
Module:event , worker , mpm_netware , mpmt_os2
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
C'est le nombre maximum de threads inactifs. Les MPMs utilisent
|
|
Packit |
90a5c9 |
cette directive de différentes manières.
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
Pour worker et event , la définition par défaut est
|
|
Packit |
90a5c9 |
MaxSpareThreads 250 . Ce MPM gère les threads inactifs
|
|
Packit |
90a5c9 |
au niveau du serveur. Si le serveur possède trop de threads
|
|
Packit |
90a5c9 |
inactifs, des processus enfants seront arrêtés jusqu'à ce que le
|
|
Packit |
90a5c9 |
nombre de threads inactifs repasse en dessous de cette limite. Des
|
|
Packit |
90a5c9 |
processus/threads supplémentaires sont susceptibles d'être créés si
|
|
Packit |
90a5c9 |
ListenCoresBucketsRatio est
|
|
Packit |
90a5c9 |
activée.
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
Pour mpm_netware , la définition par défaut est
|
|
Packit |
90a5c9 |
MaxSpareThreads 100 . Comme ce MPM n'exécute qu'un seul
|
|
Packit |
90a5c9 |
processus, le nombre de processus inactifs est surveillé au
|
|
Packit |
90a5c9 |
niveau du serveur.
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
mpmt_os2 fonctionne de manière similaire à
|
|
Packit |
90a5c9 |
mpm_netware . Pour mpmt_os2 , la
|
|
Packit |
90a5c9 |
valeur par défaut est 10 .
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
Contraintes
|
|
Packit |
90a5c9 |
La gamme de valeurs pour MaxSpareThreads
|
|
Packit |
90a5c9 |
est limitée. Apache httpd corrigera automatiquement cette valeur selon
|
|
Packit |
90a5c9 |
les règles suivantes :
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
Avec mpm_netware , MaxSpareThreads doit être supérieure à MinSpareThreads .
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
Avec
|
|
Packit |
90a5c9 |
worker et event , MaxSpareThreads
|
|
Packit |
90a5c9 |
doit être supérieure ou égale à la somme de MinSpareThreads et ThreadsPerChild .
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
Voir aussi
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
MinSpareThreads
|
|
Packit |
90a5c9 |
StartServers
|
|
Packit |
90a5c9 |
MaxSpareServers
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
Description:Nombre minimum de threads inactifs qui seront disponibles
|
|
Packit |
90a5c9 |
pour pouvoir traiter les pics de requêtes
|
|
Packit |
90a5c9 |
Syntaxe:MinSpareThreads nombre
|
|
Packit |
90a5c9 |
Défaut:Voir ci-dessous pour plus de détails
|
|
Packit |
90a5c9 |
Contexte:configuration globale
|
|
Packit |
90a5c9 |
Statut:MPM
|
|
Packit |
90a5c9 |
Module:event , worker , mpm_netware , mpmt_os2
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
C'est le nombre minimum de threads inactifs pour être en mesure
|
|
Packit |
90a5c9 |
de traiter les pics de requêtes. Les MPMs utilisent cette directive
|
|
Packit |
90a5c9 |
de différentes manières.
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
Avec worker et event , la définition par défaut est
|
|
Packit |
90a5c9 |
MinSpareThreads 75 , et le nombre de threads inactifs
|
|
Packit |
90a5c9 |
est surveillé au niveau du serveur. Si le serveur ne possède pas
|
|
Packit |
90a5c9 |
assez de threads inactifs, des processus enfants sont créés jusqu'à
|
|
Packit |
90a5c9 |
ce que le nombre de threads inactifs repasse au dessus de
|
|
Packit |
90a5c9 |
nombre. Des processus/threads supplémentaires peuvent
|
|
Packit |
90a5c9 |
être créés si ListenCoresBucketsRatio est activée.
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
Avec mpm_netware , la définition par défaut est
|
|
Packit |
90a5c9 |
MinSpareThreads 10 et, comme ce MPM n'exécute qu'un
|
|
Packit |
90a5c9 |
seul processus, le nombre de threads est surveillé au niveau du
|
|
Packit |
90a5c9 |
serveur.
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
mpmt_os2 fonctionne de manière similaire à
|
|
Packit |
90a5c9 |
mpm_netware . Pour mpmt_os2 , la
|
|
Packit |
90a5c9 |
valeur par défaut est 5 .
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
Voir aussi
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
MaxSpareThreads
|
|
Packit |
90a5c9 |
StartServers
|
|
Packit |
90a5c9 |
MinSpareServers
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
Description:Ficher dans lequel le serveur enregistre l'identificateur
|
|
Packit |
90a5c9 |
de processus du démon
|
|
Packit |
90a5c9 |
Syntaxe:PidFile nom fichier
|
|
Packit |
90a5c9 |
Défaut:PidFile logs/httpd.pid
|
|
Packit |
90a5c9 |
Contexte:configuration globale
|
|
Packit |
90a5c9 |
Statut:MPM
|
|
Packit |
90a5c9 |
Module:event , worker , prefork , mpm_winnt , mpmt_os2
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
La directive PidFile permet de définir le
|
|
Packit |
90a5c9 |
ficher dans lequel le serveur
|
|
Packit |
90a5c9 |
enregistre l'identificateur de processus du démon. Si le chemin du
|
|
Packit |
90a5c9 |
fichier n'est pas absolu, il est considéré comme relatif au chemin
|
|
Packit |
90a5c9 |
défini par la directive ServerRoot .
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
ExemplePidFile /var/run/apache.pid
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
Il est souvent utile de pouvoir envoyer un signal au
|
|
Packit |
90a5c9 |
serveur afin qu'il ferme et ouvre à nouveau ses journaux
|
|
Packit |
90a5c9 |
d'erreur et de transfert , et recharge son
|
|
Packit |
90a5c9 |
fichier de configuration. Pour ce faire, on envoie un signal SIGHUP
|
|
Packit |
90a5c9 |
(kill -1) à l'identificateur de processus enregistré dans le fichier
|
|
Packit |
90a5c9 |
défini par la directive PidFile .
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
La directive PidFile fait l'objet des
|
|
Packit |
90a5c9 |
mêmes avertissements que ceux concernant le chemin d'enregistrement
|
|
Packit |
90a5c9 |
des fichiers journaux et la sécurité.
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
Note
|
|
Packit |
90a5c9 |
Depuis la version 2 du serveur HTTP Apache, nous recommandons de n'utiliser
|
|
Packit |
90a5c9 |
que le script apachectl , ou le script de
|
|
Packit |
90a5c9 |
démarrage fourni avec votre système d'exploitation pour (re)démarrer ou
|
|
Packit |
90a5c9 |
arrêter le serveur.
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
Description:Taille du tampon TCP en entrée
|
|
Packit |
90a5c9 |
Syntaxe:ReceiveBufferSize octets
|
|
Packit |
90a5c9 |
Défaut:ReceiveBufferSize 0
|
|
Packit |
90a5c9 |
Contexte:configuration globale
|
|
Packit |
90a5c9 |
Statut:MPM
|
|
Packit |
90a5c9 |
Module:event , worker , prefork , mpm_winnt , mpm_netware , mpmt_os2
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
Le serveur va fixer la taille du tampon TCP en entrée au
|
|
Packit |
90a5c9 |
nombre d'octets spécifié.
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
Si la directive est définie à 0 , le serveur va
|
|
Packit |
90a5c9 |
utiliser la valeur par défaut adoptée par le système
|
|
Packit |
90a5c9 |
d'exploitation.
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
Description:Chemin du fichier où sont stockées les données concernant
|
|
Packit |
90a5c9 |
la coordination des processus enfants
|
|
Packit |
90a5c9 |
Syntaxe:ScoreBoardFile chemin fichier
|
|
Packit |
90a5c9 |
Défaut:ScoreBoardFile logs/apache_runtime_status
|
|
Packit |
90a5c9 |
Contexte:configuration globale
|
|
Packit |
90a5c9 |
Statut:MPM
|
|
Packit |
90a5c9 |
Module:event , worker , prefork , mpm_winnt
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
Le serveur HTTP Apache utilise un tableau de bord pour la
|
|
Packit |
90a5c9 |
communication entre le processus parent et les processus enfants.
|
|
Packit |
90a5c9 |
Pour faciliter cette communication, certaines architectures
|
|
Packit |
90a5c9 |
nécessitent un fichier. En l'absence de cette directive, donc si
|
|
Packit |
90a5c9 |
aucun nom de fichier n'est spécifié, Apache httpd tentera tout
|
|
Packit |
90a5c9 |
d'abord de créer un tableau uniquement en mémoire (en utilisant la
|
|
Packit |
90a5c9 |
mémoire partagée anonyme) ; et si il n'y parvient pas, il tentera de
|
|
Packit |
90a5c9 |
créer un fichier sur disque (en utilisant la mémoire partagée à base
|
|
Packit |
90a5c9 |
de fichier). Si cette directive est utilisée, Apache httpd créera
|
|
Packit |
90a5c9 |
systématiquement un fichier sur disque.
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
ExempleScoreBoardFile /var/run/apache_runtime_status
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
Une mémoire partagée sous forme de fichier est utile pour les
|
|
Packit |
90a5c9 |
applications tierces qui nécessitent un accès direct au tableau de
|
|
Packit |
90a5c9 |
bord des processus.
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
Si vous utilisez un ScoreBoardFile , vous
|
|
Packit |
90a5c9 |
pourrez constater une amélioration des performances en le plaçant
|
|
Packit |
90a5c9 |
sur un disque virtuel en RAM. Assurez-vous cependant de tenir compte
|
|
Packit |
90a5c9 |
des mêmes avertissements que ceux concernant le chemin du fichier
|
|
Packit |
90a5c9 |
journal et la sécurité.
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
Voir aussi
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
Arrêter et redémarrer
|
|
Packit |
90a5c9 |
le serveur HTTP Apache
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
Description:Taille du tampon TCP en sortie
|
|
Packit |
90a5c9 |
Syntaxe:SendBufferSize octets
|
|
Packit |
90a5c9 |
Défaut:SendBufferSize 0
|
|
Packit |
90a5c9 |
Contexte:configuration globale
|
|
Packit |
90a5c9 |
Statut:MPM
|
|
Packit |
90a5c9 |
Module:event , worker , prefork , mpm_winnt , mpm_netware , mpmt_os2
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
Définit la taille du tampon TCP en sortie avec le nombre
|
|
Packit |
90a5c9 |
d'octets spécifié. Ceci s'avère souvent très utile pour augmenter les
|
|
Packit |
90a5c9 |
valeurs par défaut standards du passé des systèmes d'exploitation
|
|
Packit |
90a5c9 |
pour les transmissions à grande vitesse et haute densité (c'est
|
|
Packit |
90a5c9 |
à dire de l'ordre de 100ms comme sur les liaisons rapides
|
|
Packit |
90a5c9 |
transcontinentales).
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
Si la directive est définie à 0 , le serveur va
|
|
Packit |
90a5c9 |
utiliser la valeur par défaut adoptée par le système
|
|
Packit |
90a5c9 |
d'exploitation.
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
L'amélioration des performances des connexions à grande vitesse
|
|
Packit |
90a5c9 |
et à temps de latence élevé, peut nécessiter
|
|
Packit |
90a5c9 |
une intervention au niveau de la configuration de votre système
|
|
Packit |
90a5c9 |
d'exploitation.
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
Sous certains systèmes d'exploitation, la modification du
|
|
Packit |
90a5c9 |
comportement TCP via une augmentation de la valeur de
|
|
Packit |
90a5c9 |
SendBufferSize risque de ne pas être
|
|
Packit |
90a5c9 |
perceptible, si la directive EnableSendfile n'est pas définie à OFF.
|
|
Packit |
90a5c9 |
Cette interaction ne s'applique qu'aux fichiers statiques.
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
Description:Limite supérieure de la définition du nombre de
|
|
Packit |
90a5c9 |
processus
|
|
Packit |
90a5c9 |
Syntaxe:ServerLimit nombre
|
|
Packit |
90a5c9 |
Défaut:Voir ci-dessous pour plus de détails
|
|
Packit |
90a5c9 |
Contexte:configuration globale
|
|
Packit |
90a5c9 |
Statut:MPM
|
|
Packit |
90a5c9 |
Module:event , worker , prefork
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
Avec le MPM prefork , cette directive définit le
|
|
Packit |
90a5c9 |
nombre maximum que l'on peut affecter à la directive MaxRequestWorkers , et ceci pour la
|
|
Packit |
90a5c9 |
durée de vie du processus Apache httpd. Avec les
|
|
Packit |
90a5c9 |
MPMs worker et event , cette directive, en combinaison avec
|
|
Packit |
90a5c9 |
ThreadLimit , définit le
|
|
Packit |
90a5c9 |
nombre maximum que l'on peut affecter à MaxRequestWorkers , et ceci pour la durée de
|
|
Packit |
90a5c9 |
vie du processus Apache httpd. Avec le MPM event , cette
|
|
Packit |
90a5c9 |
directive permet aussi de définir le nombre de processus anciens du serveur
|
|
Packit |
90a5c9 |
pouvant continuer à s'exécuter pour terminer le traitement des connexions
|
|
Packit |
90a5c9 |
ouvertes. Au cours d'un redémarrage, vous pouvez
|
|
Packit |
90a5c9 |
modifier la valeur de la directive MaxRequestWorkers , alors que toute
|
|
Packit |
90a5c9 |
tentative de modification de la valeur de la directive ServerLimit sera ignorée.
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
Cette directive doit être utilisée avec précaution. Si
|
|
Packit |
90a5c9 |
ServerLimit est définie à une valeur beaucoup
|
|
Packit |
90a5c9 |
plus grande que nécessaire, de la mémoire partagée supplémentaire
|
|
Packit |
90a5c9 |
sera inutilement allouée. Si à la fois
|
|
Packit |
90a5c9 |
ServerLimit et MaxRequestWorkers possèdent des valeurs
|
|
Packit |
90a5c9 |
supérieures à ce que le système peut supporter, ce dernier peut
|
|
Packit |
90a5c9 |
devenir instable ou Apache httpd peut tout simplement refuser de démarrer.
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
Avec les MPMs prefork et event , n'utilisez cette directive
|
|
Packit |
90a5c9 |
que si vous devez définir MaxRequestWorkers à une valeur supérieure à
|
|
Packit |
90a5c9 |
256 (valeur par défaut). N'affectez pas à la directive ServerLimit une valeur supérieure à
|
|
Packit |
90a5c9 |
celle que vous avez prévu d'affecter à la directive MaxRequestWorkers .
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
Avec worker , n'utilisez cette directive que si
|
|
Packit |
90a5c9 |
la définition de vos directives MaxRequestWorkers et ThreadsPerChild nécessitent plus de
|
|
Packit |
90a5c9 |
16 processus serveurs (valeur par défaut). N'affectez pas à la
|
|
Packit |
90a5c9 |
directive ServerLimit une
|
|
Packit |
90a5c9 |
valeur supérieure au nombre de processus requis pour la définition
|
|
Packit |
90a5c9 |
des directives MaxRequestWorkers
|
|
Packit |
90a5c9 |
et ThreadsPerChild .
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
Note
|
|
Packit |
90a5c9 |
Il existe une limite de ServerLimit 20000 codée en
|
|
Packit |
90a5c9 |
dur dans le serveur (200000 pour le MPM prefork ).
|
|
Packit |
90a5c9 |
Ceci est censé éviter les effets désastreux que pourrait provoquer
|
|
Packit |
90a5c9 |
une faute de frappe. Pour dépasser cette limite, vous devez
|
|
Packit |
90a5c9 |
modifier la valeur de MAX_SERVER_LIMIT dans le fichier source du
|
|
Packit |
90a5c9 |
mpm et recompiler le serveur.
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
Voir aussi
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
Arrêter et redémarrer
|
|
Packit |
90a5c9 |
le serveur HTTP Apache
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
Description:Nombre de processus enfants du serveur créés au
|
|
Packit |
90a5c9 |
démarrage
|
|
Packit |
90a5c9 |
Syntaxe:StartServers nombre
|
|
Packit |
90a5c9 |
Défaut:Voir ci-dessous pour plus de détails
|
|
Packit |
90a5c9 |
Contexte:configuration globale
|
|
Packit |
90a5c9 |
Statut:MPM
|
|
Packit |
90a5c9 |
Module:event , worker , prefork , mpmt_os2
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
La directive StartServers permet de
|
|
Packit |
90a5c9 |
définir le nombre de processus enfants du serveur créés au
|
|
Packit |
90a5c9 |
démarrage. Comme le nombre de processus est contrôlé dynamiquement
|
|
Packit |
90a5c9 |
en fonction de la charge (voir MinSpareThreads , MaxSpareThreads , MinSpareServers , MaxSpareServers ), il n'est en général
|
|
Packit |
90a5c9 |
pas nécessaire d'ajuster ce paramètre.
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
La valeur par défaut diffère d'un MPM à l'autre. Pour
|
|
Packit |
90a5c9 |
worker et event , la définition par défaut est
|
|
Packit |
90a5c9 |
StartServers 3 ; la valeur par défaut est
|
|
Packit |
90a5c9 |
5 pour prefork et 2
|
|
Packit |
90a5c9 |
pour mpmt_os2 .
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
Description:Nombre de threads créés au démarrage
|
|
Packit |
90a5c9 |
Syntaxe:StartThreads nombre
|
|
Packit |
90a5c9 |
Défaut:Voir ci-dessous pour plus de détails
|
|
Packit |
90a5c9 |
Contexte:configuration globale
|
|
Packit |
90a5c9 |
Statut:MPM
|
|
Packit |
90a5c9 |
Module:mpm_netware
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
C'est le nombre de threads créés au démarrage du serveur. Comme
|
|
Packit |
90a5c9 |
le nombre de threads est contrôlé dynamiquement
|
|
Packit |
90a5c9 |
en fonction de la charge (voir MinSpareThreads , MaxSpareThreads , MinSpareServers , MaxSpareServers ), il n'est en général
|
|
Packit |
90a5c9 |
pas nécessaire d'ajuster ce paramètre.
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
Pour mpm_netware , la définition par défaut est
|
|
Packit |
90a5c9 |
StartThreads 50 et, comme il n'y a qu'un processus, il
|
|
Packit |
90a5c9 |
s'agit du nombre total de threads créés au démarrage pour servir les
|
|
Packit |
90a5c9 |
requêtes.
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
Description:Le nombre de threads maximum que l'on peut définir par
|
|
Packit |
90a5c9 |
processus enfant
|
|
Packit |
90a5c9 |
Syntaxe:ThreadLimit nombre
|
|
Packit |
90a5c9 |
Défaut:Voir ci-dessous pour plus de détails
|
|
Packit |
90a5c9 |
Contexte:configuration globale
|
|
Packit |
90a5c9 |
Statut:MPM
|
|
Packit |
90a5c9 |
Module:event , worker , mpm_winnt
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
Cette directive permet de définir le nombre maximum que l'on peut
|
|
Packit |
90a5c9 |
affecter à la directive ThreadsPerChild pour la durée de vie
|
|
Packit |
90a5c9 |
du processus Apache httpd. La directive ThreadsPerChild peut être modifiée
|
|
Packit |
90a5c9 |
au cours d'un redémarrage jusqu'à la valeur de la directive ThreadLimit , mais toute tentative
|
|
Packit |
90a5c9 |
de modification de la directive ThreadLimit au cours d'un
|
|
Packit |
90a5c9 |
redémarrage sera ignorée.
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
L'utilisation de cette directive doit faire l'objet de
|
|
Packit |
90a5c9 |
précautions particulières. Si ThreadLimit est
|
|
Packit |
90a5c9 |
définie à une valeur très supérieure à la directive ThreadsPerChild , de la mémoire
|
|
Packit |
90a5c9 |
partagée supplémentaire sera inutilement allouée. Si les directives
|
|
Packit |
90a5c9 |
ThreadLimit et ThreadsPerChild sont définies à des
|
|
Packit |
90a5c9 |
valeurs supérieures à ce que le système peut supporter, ce dernier
|
|
Packit |
90a5c9 |
peut devenir instable, ou Apache httpd peut tout simplement refuser de
|
|
Packit |
90a5c9 |
démarrer. Ne définissez pas cette directive à une valeur supérieure
|
|
Packit |
90a5c9 |
à la valeur maximale que vous pensez affecter à la directive ThreadsPerChild pour le processus
|
|
Packit |
90a5c9 |
Apache httpd en cours d'exécution.
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
La valeur par défaut de la directive
|
|
Packit |
90a5c9 |
ThreadLimit est 1920 avec
|
|
Packit |
90a5c9 |
mpm_winnt , et 64 avec les autres
|
|
Packit |
90a5c9 |
MPMs.
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
Note
|
|
Packit |
90a5c9 |
Il existe une limite de ThreadLimit 20000 (ou
|
|
Packit |
90a5c9 |
ThreadLimit 100000 avec event ,
|
|
Packit |
90a5c9 |
ThreadLimit 15000 avec mpm_winnt )
|
|
Packit |
90a5c9 |
codée en dur dans le serveur. Ceci est censé éviter les effets
|
|
Packit |
90a5c9 |
désastreux que pourrait provoquer une faute de frappe. Pour
|
|
Packit |
90a5c9 |
dépasser cette limite, vous devez modifier la valeur de
|
|
Packit |
90a5c9 |
MAX_THREAD_LIMIT dans le fichier source du mpm et recompiler le
|
|
Packit |
90a5c9 |
serveur.
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
Description:Nombre de threads créés par chaque processus
|
|
Packit |
90a5c9 |
enfant
|
|
Packit |
90a5c9 |
Syntaxe:ThreadsPerChild nombre
|
|
Packit |
90a5c9 |
Défaut:Voir ci-dessous pour plus de détails
|
|
Packit |
90a5c9 |
Contexte:configuration globale
|
|
Packit |
90a5c9 |
Statut:MPM
|
|
Packit |
90a5c9 |
Module:event , worker , mpm_winnt
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
Cette directive permet de définir le nombre de threads que va
|
|
Packit |
90a5c9 |
créer chaque processus enfant. Un processus enfant crée ces threads
|
|
Packit |
90a5c9 |
au démarrage et n'en crée plus d'autres par la suite. Si l'on
|
|
Packit |
90a5c9 |
utilise un MPM comme mpm_winnt qui ne lance qu'un
|
|
Packit |
90a5c9 |
processus enfant, ce nombre doit être suffisamment grand pour
|
|
Packit |
90a5c9 |
supporter la charge du serveur. Avec un MPM comme
|
|
Packit |
90a5c9 |
worker qui lance plusieurs processus enfants, c'est
|
|
Packit |
90a5c9 |
le nombre total de threads qui doit être suffisamment grand
|
|
Packit |
90a5c9 |
pour supporter la charge du serveur.
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
La valeur par défaut de la directive
|
|
Packit |
90a5c9 |
ThreadsPerChild est 64 avec
|
|
Packit |
90a5c9 |
mpm_winnt , et 25 avec les autres
|
|
Packit |
90a5c9 |
MPMs.
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
Description:La taille en octets de la pile qu'utilisent les threads qui
|
|
Packit |
90a5c9 |
traitent les connexions clients
|
|
Packit |
90a5c9 |
Syntaxe:ThreadStackSize taille
|
|
Packit |
90a5c9 |
Défaut:65536 sous NetWare; varie en fonction des autres systèmes
|
|
Packit |
90a5c9 |
d'exploitation
|
|
Packit |
90a5c9 |
Contexte:configuration globale
|
|
Packit |
90a5c9 |
Statut:MPM
|
|
Packit |
90a5c9 |
Module:event , worker , mpm_winnt , mpm_netware , mpmt_os2
|
|
Packit |
90a5c9 |
Compatibilité:Disponible dans les versions 2.1 et supérieures
|
|
Packit |
90a5c9 |
du serveur HTTP Apache
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
La directive ThreadStackSize permet de
|
|
Packit |
90a5c9 |
définir la taille de la pile (pour les données propres) qu'utilisent
|
|
Packit |
90a5c9 |
les threads qui traitent les connexions clients en faisant appel à
|
|
Packit |
90a5c9 |
des modules. Dans la plupart des cas, la valeur par défaut de la
|
|
Packit |
90a5c9 |
taille de la pile du système d'exploitation convient, mais il existe
|
|
Packit |
90a5c9 |
certaines situations où il peut s'avérer nécessaire de l'ajuster
|
|
Packit |
90a5c9 |
:
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
Sur les plates-formes qui possèdent une valeur par défaut de
|
|
Packit |
90a5c9 |
taille de la pile relativement petite (par exemple HP-UX), Apache
|
|
Packit |
90a5c9 |
httpd peut se crasher si l'on utilise certains modules tiers qui
|
|
Packit |
90a5c9 |
possèdent un quantité de données propres stockées relativement
|
|
Packit |
90a5c9 |
importante. Il se peut que ces mêmes modules fonctionnent
|
|
Packit |
90a5c9 |
correctement sur d'autres plate-formes où la valeur par défaut de
|
|
Packit |
90a5c9 |
la taille de la pile est supérieure. Ce type de crash peut être
|
|
Packit |
90a5c9 |
evité en définissant ThreadStackSize à une
|
|
Packit |
90a5c9 |
valeur supérieure à la valeur par défaut du système
|
|
Packit |
90a5c9 |
d'exploitation. Ce type d'ajustement n'est nécessaire que si le
|
|
Packit |
90a5c9 |
fournisseur du module tiers en fait mention, ou si le diagnostic
|
|
Packit |
90a5c9 |
d'un crash d'Apache httpd indique que la taille de la pile était trop
|
|
Packit |
90a5c9 |
petite.
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
Sur les plates-formes où la taille par défaut de la pile des
|
|
Packit |
90a5c9 |
threads est sensiblement supérieure à la taille nécessaire pour la
|
|
Packit |
90a5c9 |
configuration du serveur web, il est possible de disposer d'un
|
|
Packit |
90a5c9 |
plus grand nombre de threads par processus enfant si la directive
|
|
Packit |
90a5c9 |
ThreadStackSize est définie à une valeur
|
|
Packit |
90a5c9 |
inférieure à la valeur par défaut du système d'exploitation.
|
|
Packit |
90a5c9 |
Cependant, ce
|
|
Packit |
90a5c9 |
type d'ajustement ne doit être effectué que dans un environnement
|
|
Packit |
90a5c9 |
de test permettant de qualifier le serveur web au maximum de ses
|
|
Packit |
90a5c9 |
possibilités, car il peut arriver, dans de rares cas, que des
|
|
Packit |
90a5c9 |
requêtes nécessitent une taille de pile supérieure pour pouvoir
|
|
Packit |
90a5c9 |
être traitées. La taille minimale requise pour la pile dépend
|
|
Packit |
90a5c9 |
fortement des modules utilisés, mais toute modification dans la
|
|
Packit |
90a5c9 |
configuration du serveur web peut invalider la définition courante
|
|
Packit |
90a5c9 |
de la directive ThreadStackSize .
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
Sous Linux, cette directive ne peut être utilisée que pour
|
|
Packit |
90a5c9 |
augmenter la valeur par defaut de la taille de la pile, car
|
|
Packit |
90a5c9 |
l'appel système sous-jacent utilise cette valeur comme taille de pile
|
|
Packit |
90a5c9 |
minimale. C'est la limite logicielle (souvent élevée)
|
|
Packit |
90a5c9 |
pour ulimit -s (8Mo si aucune limite) qui est
|
|
Packit |
90a5c9 |
utilisée comme taille de pile par défaut.
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
Il est recommandé de ne pas réduire
|
|
Packit |
90a5c9 |
ThreadStackSize , à moins qu'un grand nombre
|
|
Packit |
90a5c9 |
de threads par processus enfant ne soit nécessaire. Sur certaines
|
|
Packit |
90a5c9 |
plates-formes (y compris Linux), une valeur de 128000 est déjà trop
|
|
Packit |
90a5c9 |
basse et provoque des crashes avec certains modules courants.
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
|
|
Packit |
90a5c9 |
Langues Disponibles: de |
|
|
Packit |
90a5c9 |
en |
|
|
Packit |
90a5c9 |
fr |
|
|
Packit |
90a5c9 |
ja |
|
|
Packit |
90a5c9 |
tr
|
|
Packit |
90a5c9 |
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.
|
|
Packit |
90a5c9 |
<script type="text/javascript">
|
|
Packit |
90a5c9 |
var comments_shortname = 'httpd';
|
|
Packit |
90a5c9 |
var comments_identifier = 'http://httpd.apache.org/docs/2.4/mod/mpm_common.html';
|
|
Packit |
90a5c9 |
(function(w, d) {
|
|
Packit |
90a5c9 |
if (w.location.hostname.toLowerCase() == "httpd.apache.org") {
|
|
Packit |
90a5c9 |
d.write('
|
|
Packit |
90a5c9 |
var s = d.createElement('script');
|
|
Packit |
90a5c9 |
s.type = 'text/javascript';
|
|
Packit |
90a5c9 |
s.async = true;
|
|
Packit |
90a5c9 |
s.src = 'https://comments.apache.org/show_comments.lua?site=' + comments_shortname + '&page=' + comments_identifier;
|
|
Packit |
90a5c9 |
(d.getElementsByTagName('head')[0] || d.getElementsByTagName('body')[0]).appendChild(s);
|
|
Packit |
90a5c9 |
}
|
|
Packit |
90a5c9 |
else {
|
|
Packit |
90a5c9 |
d.write('
|
|
Packit |
90a5c9 |
}
|
|
Packit |
90a5c9 |
})(window, document);
|
|
Packit |
90a5c9 |
//--></script>
|
|
Packit |
90a5c9 |
Copyright 2018 The Apache Software Foundation. Autorisé sous Apache License, Version 2.0.
|
|
Packit |
90a5c9 |
Modules | Directives | FAQ | Glossaire | Plan du site <script type="text/javascript">
|
|
Packit |
90a5c9 |
if (typeof(prettyPrint) !== 'undefined') {
|
|
Packit |
90a5c9 |
prettyPrint();
|
|
Packit |
90a5c9 |
}
|
|
Packit |
90a5c9 |
//--></script>
|
|
Packit |
90a5c9 |
</body></html>
|