]> granicus.if.org Git - apache/blob - docs/manual/mod/prefork.html.fr
Merge in APR[-util] macros from branches/trunk-buildconf-noapr
[apache] / docs / manual / mod / prefork.html.fr
1 <?xml version="1.0" encoding="ISO-8859-1"?>
2 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
3 <html xmlns="http://www.w3.org/1999/xhtml" lang="fr" xml:lang="fr"><head>
4 <meta content="text/html; charset=ISO-8859-1" http-equiv="Content-Type" />
5 <!--
6         XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
7               This file is generated from xml source: DO NOT EDIT
8         XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
9       -->
10 <title>prefork - Serveur Apache HTTP Version 2.5</title>
11 <link href="../style/css/manual.css" rel="stylesheet" media="all" type="text/css" title="Main stylesheet" />
12 <link href="../style/css/manual-loose-100pc.css" rel="alternate stylesheet" media="all" type="text/css" title="No Sidebar - Default font size" />
13 <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" />
14 <script src="../style/scripts/prettify.min.js" type="text/javascript">
15 </script>
16
17 <link href="../images/favicon.ico" rel="shortcut icon" /></head>
18 <body>
19 <div id="page-header">
20 <p class="menu"><a href="../mod/">Modules</a> | <a href="../mod/quickreference.html">Directives</a> | <a href="http://wiki.apache.org/httpd/FAQ">FAQ</a> | <a href="../glossary.html">Glossaire</a> | <a href="../sitemap.html">Plan du site</a></p>
21 <p class="apache">Serveur Apache HTTP Version 2.5</p>
22 <img alt="" src="../images/feather.png" /></div>
23 <div class="up"><a href="./"><img title="&lt;-" alt="&lt;-" src="../images/left.gif" /></a></div>
24 <div id="path">
25 <a href="http://www.apache.org/">Apache</a> &gt; <a href="http://httpd.apache.org/">Serveur HTTP</a> &gt; <a href="http://httpd.apache.org/docs/">Documentation</a> &gt; <a href="../">Version 2.5</a> &gt; <a href="./">Modules</a></div>
26 <div id="page-content">
27 <div id="preamble"><h1>Apache MPM prefork</h1>
28 <div class="toplang">
29 <p><span>Langues Disponibles: </span><a href="../de/mod/prefork.html" hreflang="de" rel="alternate" title="Deutsch">&nbsp;de&nbsp;</a> |
30 <a href="../en/mod/prefork.html" hreflang="en" rel="alternate" title="English">&nbsp;en&nbsp;</a> |
31 <a href="../fr/mod/prefork.html" title="Français">&nbsp;fr&nbsp;</a> |
32 <a href="../ja/mod/prefork.html" hreflang="ja" rel="alternate" title="Japanese">&nbsp;ja&nbsp;</a> |
33 <a href="../tr/mod/prefork.html" hreflang="tr" rel="alternate" title="Türkçe">&nbsp;tr&nbsp;</a></p>
34 </div>
35 <table class="module"><tr><th><a href="module-dict.html#Description">Description:</a></th><td>Implémente un serveur web avec démarrage anticipé de
36 processus, sans thread</td></tr>
37 <tr><th><a href="module-dict.html#Status">Statut:</a></th><td>MPM</td></tr>
38 <tr><th><a href="module-dict.html#ModuleIdentifier">Identificateur de Module:</a></th><td>mpm_prefork_module</td></tr>
39 <tr><th><a href="module-dict.html#SourceFile">Fichier Source:</a></th><td>prefork.c</td></tr></table>
40 <h3>Sommaire</h3>
41
42     <p>Ce module multi-processus (MPM) implémente un serveur web avec
43     démarrage anticipé de processus. Chaque processus du serveur peut
44     répondre aux requêtes entrantes, et un processus parent contrôle la
45     taille du jeu de processus enfants. Il est particulièrement indiqué pour les
46     sites qui ne doivent pas utiliser les threads afin de maintenir une
47     compatibilité avec certaines bibliothèques non sûres du point de vue
48     des threads. C'est également le MPM le plus approprié si l'on veut
49     isoler les requêtes les unes des autres, de façon à ce qu'un
50     problème concernant une requête n'affecte pas les autres.</p>
51
52     <p>Ce MPM s'auto-contrôle de manière efficace, de sorte qu'il est
53     rarement nécessaire d'ajuster ses directives de configuration. Le
54     plus important est la définition de la directive <code class="directive"><a href="../mod/mpm_common.html#maxrequestworkers">MaxRequestWorkers</a></code> ; sa valeur doit être
55     assez grande pour pouvoir traiter autant de requêtes simultanées que
56     vous pensez recevoir, mais assez petite pour conserver suffisamment
57     de mémoire RAM pour tous les processus.</p>
58 </div>
59 <div id="quickview"><h3>Sujets</h3>
60 <ul id="topics">
61 <li><img alt="" src="../images/down.gif" /> <a href="#how-it-works">Comment ça marche</a></li>
62 </ul><h3 class="directives">Directives</h3>
63 <ul id="toc">
64 <li><img alt="" src="../images/right.gif" /> <a href="mpm_common.html#coredumpdirectory">CoreDumpDirectory</a></li>
65 <li><img alt="" src="../images/right.gif" /> <a href="mpm_common.html#enableexceptionhook">EnableExceptionHook</a></li>
66 <li><img alt="" src="../images/right.gif" /> <a href="mod_unixd.html#group">Group</a></li>
67 <li><img alt="" src="../images/right.gif" /> <a href="mpm_common.html#listen">Listen</a></li>
68 <li><img alt="" src="../images/right.gif" /> <a href="mpm_common.html#listenbacklog">ListenBacklog</a></li>
69 <li><img alt="" src="../images/right.gif" /> <a href="mpm_common.html#maxconnectionsperchild">MaxConnectionsPerChild</a></li>
70 <li><img alt="" src="../images/right.gif" /> <a href="mpm_common.html#maxmemfree">MaxMemFree</a></li>
71 <li><img alt="" src="../images/right.gif" /> <a href="mpm_common.html#maxrequestworkers">MaxRequestWorkers</a></li>
72 <li><img alt="" src="../images/down.gif" /> <a href="#maxspareservers">MaxSpareServers</a></li>
73 <li><img alt="" src="../images/down.gif" /> <a href="#minspareservers">MinSpareServers</a></li>
74 <li><img alt="" src="../images/right.gif" /> <a href="mpm_common.html#pidfile">PidFile</a></li>
75 <li><img alt="" src="../images/right.gif" /> <a href="mpm_common.html#receivebuffersize">ReceiveBufferSize</a></li>
76 <li><img alt="" src="../images/right.gif" /> <a href="mpm_common.html#scoreboardfile">ScoreBoardFile</a></li>
77 <li><img alt="" src="../images/right.gif" /> <a href="mpm_common.html#sendbuffersize">SendBufferSize</a></li>
78 <li><img alt="" src="../images/right.gif" /> <a href="mpm_common.html#serverlimit">ServerLimit</a></li>
79 <li><img alt="" src="../images/right.gif" /> <a href="mpm_common.html#startservers">StartServers</a></li>
80 <li><img alt="" src="../images/right.gif" /> <a href="mod_unixd.html#user">User</a></li>
81 </ul>
82 <h3>Traitement des bugs</h3><ul class="seealso"><li><a href="https://www.apache.org/dist/httpd/CHANGES_2.4">Journal des modifications de httpd</a></li><li><a href="https://bz.apache.org/bugzilla/buglist.cgi?bug_status=__open__&amp;list_id=144532&amp;product=Apache%20httpd-2&amp;query_format=specific&amp;order=changeddate%20DESC%2Cpriority%2Cbug_severity&amp;component=mpm_prefork">Problèmes connus</a></li><li><a href="https://bz.apache.org/bugzilla/enter_bug.cgi?product=Apache%20httpd-2&amp;component=mpm_prefork">Signaler un bug</a></li></ul><h3>Voir aussi</h3>
83 <ul class="seealso">
84 <li><a href="../bind.html">Définition des adresses et ports
85 qu'utilise le serveur HTTP Apache</a></li>
86 <li><a href="#comments_section">Commentaires</a></li></ul></div>
87 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
88 <div class="section">
89 <h2><a name="how-it-works" id="how-it-works">Comment ça marche</a></h2>
90     <p>Un processus de contrôle unique a pour tâche de lancer les
91     processus enfants qui attendent les connexions et les traitent au
92     fur et à mesure qu'elles arrivent. Apache httpd essaie toujours de
93     maintenir plusieurs processus serveurs inactifs ou <dfn>en
94     réserve</dfn>, afin de pouvoir traiter les requêtes entrantes. De
95     cette façon, les clients n'ont pas besoin d'attendre le démarrage
96     d'un nouveau processus enfant pour que leurs requêtes puissent être
97     traitées.</p>
98
99     <p>Les directives <code class="directive"><a href="../mod/mpm_common.html#startservers">StartServers</a></code>, <code class="directive"><a href="#minspareservers">MinSpareServers</a></code>, <code class="directive"><a href="#maxspareservers">MaxSpareServers</a></code> et <code class="directive"><a href="../mod/mpm_common.html#maxrequestworkers">MaxRequestWorkers</a></code> permettent de contrôler
100     la manière dont le processus parent crée les processus enfants pour
101     traiter les requêtes. En général, Apache httpd s'auto-contrôle de manière
102     efficace, de sorte que la plupart des sites peuvent conserver les
103     valeurs par défaut des directives. Les sites qui doivent traiter
104     plus de 256 requêtes simultanées doivent augmenter la valeur de
105     <code class="directive"><a href="../mod/mpm_common.html#maxrequestworkers">MaxRequestWorkers</a></code>, alors que les
106     sites dont la ressource mémoire est limitée doivent la diminuer afin
107     d'éviter une hyperactivité du serveur (utilisation excessive de la
108     mémoire virtuelle sur disque). Vous trouverez plus d'informations à
109     propos du contrôle de la création de processus dans le document <a href="../misc/perf-tuning.html">conseils en matière de
110     performances</a></p>
111
112     <p>Alors que le processus parent est en général démarré en tant que
113     <code>root</code> sous Unix afin de pouvoir se mettre à l'écoute sur le port 80, les
114     processus enfants sont lancés par Apache httpd sous un utilisateur avec
115     privilèges restreints. On peut contrôler les privilèges accordés aux
116     processus enfants d'Apache httpd à l'aide des directives <code class="directive"><a href="../mod/mod_unixd.html#user">User</a></code> et <code class="directive"><a href="../mod/mod_unixd.html#group">Group</a></code>. Les processus enfants doivent
117     être en mesure de lire tous les contenus destinés à être servis,
118     mais leurs privilèges doivent être aussi bas que possible.</p>
119
120     <p>La directive <code class="directive"><a href="../mod/mpm_common.html#maxconnectionsperchild">MaxConnectionsPerChild</a></code> permet de
121     contrôler la fréquence à laquelle le serveur recycle ses processus
122     en arrêtant les plus anciens et en en lançant de nouveaux.</p>
123
124     <p>Ce module MPM utilise le mutex <code>mpm-accept</code> pour
125     sérialiser l'accès aux connexions entrantes lorsque peut se
126     présenter un problème d'afflux de requêtes (en général quand il y a
127     plusieurs sockets en écoute). Les aspects de l'implémentation de ce
128     mutex peuvent être configurés via la directive <code class="directive"><a href="../mod/core.html#mutex">Mutex</a></code>. Vous trouverez des informations
129     supplémentaires à propos de ce mutex dans la documentation à propos
130     des  <a href="../misc/perf-tuning.html">conseils en matière de
131     performances</a></p>
132 </div>
133 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
134 <div class="directive-section"><h2><a name="maxspareservers" id="maxspareservers">Directive</a> <a name="MaxSpareServers" id="MaxSpareServers">MaxSpareServers</a></h2>
135 <table class="directive">
136 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Nombre maximum de processus serveurs enfants
137 inactifs</td></tr>
138 <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>MaxSpareServers <var>nombre</var></code></td></tr>
139 <tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>MaxSpareServers 10</code></td></tr>
140 <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur</td></tr>
141 <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>MPM</td></tr>
142 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>prefork</td></tr>
143 </table>
144     <p>La directive <code class="directive">MaxSpareServers</code> permet de
145     définir le nombre maximum souhaité de processus serveurs enfants
146     <em>inactifs</em>. Un processus inactif est un processus qui ne
147     traite pas de requête. S'il y a plus de
148     <code class="directive">MaxSpareServers</code> processus inactifs, le
149     processus parent arrêtera les processus excédentaires.</p>
150
151     <p>La modification de ce paramètre n'est nécessaire que
152     dans le cas de sites très sollicités. Définir ce paramètre à une
153     valeur très grande est cependant dans la plupart des cas une
154     mauvaise idée. Si vous essayez d'affecter à ce paramètre une valeur
155     égale ou inférieure à la valeur de <code class="directive"><a href="#minspareservers">MinSpareServers</a></code>, le serveur HTTP Apache
156     l'ajustera automatiquement à la valeur de <code class="directive">
157     MinSpareServers</code><code> + 1</code>.</p>
158
159 <h3>Voir aussi</h3>
160 <ul>
161 <li><code class="directive"><a href="#minspareservers">MinSpareServers</a></code></li>
162 <li><code class="directive"><a href="../mod/mpm_common.html#startservers">StartServers</a></code></li>
163 <li><code class="directive"><a href="../mod/mpm_common.html#maxsparethreads">MaxSpareThreads</a></code></li>
164 </ul>
165 </div>
166 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
167 <div class="directive-section"><h2><a name="minspareservers" id="minspareservers">Directive</a> <a name="MinSpareServers" id="MinSpareServers">MinSpareServers</a></h2>
168 <table class="directive">
169 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Nombre minimum de processus serveurs enfants
170 inactifs</td></tr>
171 <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>MinSpareServers <var>nombre</var></code></td></tr>
172 <tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>MinSpareServers 5</code></td></tr>
173 <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur</td></tr>
174 <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>MPM</td></tr>
175 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>prefork</td></tr>
176 </table>
177     <p>La directive <code class="directive">MinSpareServers</code> permet de
178     définir le nombre minimum désiré de processus serveurs enfants
179     <em>inactifs</em>. Un processus inactif est un processus qui ne
180     traite pas de requête. S'il y a moins de
181     <code class="directive">MinSpareServers</code> processus inactifs, le
182     processus parent va créer de nouveaux enfants de la manière suivante
183     : il en crée un, attend une seconde, il en crée deux, attend une
184     seconde, il en crée quatre, puis continue ainsi exponentiellement
185     jusu'à ce que son taux de création de processus enfants soit de 32
186     par seconde. Il ne s'arrête que lorsque le nombre de processus
187     enfants correspond à la définition de la directive
188     <code class="directive">MinSpareServers</code>.</p>
189
190     <p>La modification de ce paramètre n'est nécessaire que
191     dans le cas de sites très sollicités. Définir ce paramètre à une
192     valeur très grande est dans la plupart des cas une mauvaise
193     idée.</p>
194
195 <h3>Voir aussi</h3>
196 <ul>
197 <li><code class="directive"><a href="#maxspareservers">MaxSpareServers</a></code></li>
198 <li><code class="directive"><a href="../mod/mpm_common.html#startservers">StartServers</a></code></li>
199 <li><code class="directive"><a href="../mod/mpm_common.html#minsparethreads">MinSpareThreads</a></code></li>
200 </ul>
201 </div>
202 </div>
203 <div class="bottomlang">
204 <p><span>Langues Disponibles: </span><a href="../de/mod/prefork.html" hreflang="de" rel="alternate" title="Deutsch">&nbsp;de&nbsp;</a> |
205 <a href="../en/mod/prefork.html" hreflang="en" rel="alternate" title="English">&nbsp;en&nbsp;</a> |
206 <a href="../fr/mod/prefork.html" title="Français">&nbsp;fr&nbsp;</a> |
207 <a href="../ja/mod/prefork.html" hreflang="ja" rel="alternate" title="Japanese">&nbsp;ja&nbsp;</a> |
208 <a href="../tr/mod/prefork.html" hreflang="tr" rel="alternate" title="Türkçe">&nbsp;tr&nbsp;</a></p>
209 </div><div class="top"><a href="#page-header"><img src="../images/up.gif" alt="top" /></a></div><div class="section"><h2><a id="comments_section" name="comments_section">Commentaires</a></h2><div class="warning"><strong>Notice:</strong><br />This is not a Q&amp;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 <a href="http://httpd.apache.org/lists.html">mailing lists</a>.</div>
210 <script type="text/javascript"><!--//--><![CDATA[//><!--
211 var comments_shortname = 'httpd';
212 var comments_identifier = 'http://httpd.apache.org/docs/trunk/mod/prefork.html';
213 (function(w, d) {
214     if (w.location.hostname.toLowerCase() == "httpd.apache.org") {
215         d.write('<div id="comments_thread"><\/div>');
216         var s = d.createElement('script');
217         s.type = 'text/javascript';
218         s.async = true;
219         s.src = 'https://comments.apache.org/show_comments.lua?site=' + comments_shortname + '&page=' + comments_identifier;
220         (d.getElementsByTagName('head')[0] || d.getElementsByTagName('body')[0]).appendChild(s);
221     }
222     else {
223         d.write('<div id="comments_thread">Comments are disabled for this page at the moment.<\/div>');
224     }
225 })(window, document);
226 //--><!]]></script></div><div id="footer">
227 <p class="apache">Copyright 2017 The Apache Software Foundation.<br />Autorisé sous <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.</p>
228 <p class="menu"><a href="../mod/">Modules</a> | <a href="../mod/quickreference.html">Directives</a> | <a href="http://wiki.apache.org/httpd/FAQ">FAQ</a> | <a href="../glossary.html">Glossaire</a> | <a href="../sitemap.html">Plan du site</a></p></div><script type="text/javascript"><!--//--><![CDATA[//><!--
229 if (typeof(prettyPrint) !== 'undefined') {
230     prettyPrint();
231 }
232 //--><!]]></script>
233 </body></html>