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" />
6 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
7 This file is generated from xml source: DO NOT EDIT
8 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
10 <title>Modules multi-processus (MPMs) - 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">
17 <link href="./images/favicon.ico" rel="shortcut icon" /></head>
18 <body id="manual-page"><div id="page-header">
19 <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>
20 <p class="apache">Serveur Apache HTTP Version 2.5</p>
21 <img alt="" src="./images/feather.png" /></div>
22 <div class="up"><a href="./"><img title="<-" alt="<-" src="./images/left.gif" /></a></div>
24 <a href="http://www.apache.org/">Apache</a> > <a href="http://httpd.apache.org/">Serveur HTTP</a> > <a href="http://httpd.apache.org/docs/">Documentation</a> > <a href="./">Version 2.5</a></div><div id="page-content"><div id="preamble"><h1>Modules multi-processus (MPMs)</h1>
26 <p><span>Langues Disponibles: </span><a href="./de/mpm.html" hreflang="de" rel="alternate" title="Deutsch"> de </a> |
27 <a href="./en/mpm.html" hreflang="en" rel="alternate" title="English"> en </a> |
28 <a href="./es/mpm.html" hreflang="es" rel="alternate" title="Español"> es </a> |
29 <a href="./fr/mpm.html" title="Français"> fr </a> |
30 <a href="./ja/mpm.html" hreflang="ja" rel="alternate" title="Japanese"> ja </a> |
31 <a href="./ko/mpm.html" hreflang="ko" rel="alternate" title="Korean"> ko </a> |
32 <a href="./tr/mpm.html" hreflang="tr" rel="alternate" title="Türkçe"> tr </a> |
33 <a href="./zh-cn/mpm.html" hreflang="zh-cn" rel="alternate" title="Simplified Chinese"> zh-cn </a></p>
36 <p>Ce document décrit ce qu'est un Module Multi-Processus, ainsi
37 que la manière dont ces modules sont utilisés par le serveur HTTP Apache.</p>
39 <div id="quickview"><ul id="toc"><li><img alt="" src="./images/down.gif" /> <a href="#introduction">Introduction</a></li>
40 <li><img alt="" src="./images/down.gif" /> <a href="#defaults">MPM par défaut</a></li>
41 <li><img alt="" src="./images/down.gif" /> <a href="#static">Compiler un module MPM en tant que module
43 <li><img alt="" src="./images/down.gif" /> <a href="#dynamic">Compiler un module MPM en tant que module
44 DSO (Dynamic Shared Object)</a></li>
45 </ul><h3>Voir aussi</h3><ul class="seealso"><li><a href="#comments_section">Commentaires</a></li></ul></div>
46 <div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
48 <h2><a name="introduction" id="introduction">Introduction</a></h2>
50 <p>La conception du serveur HTTP Apache en fait un serveur web puissant et
51 flexible pouvant fonctionner sur une très grande variété de
52 plateformes et toute une gamme d'environnements différents. Plateformes
53 différentes et environnements différents signifient souvent fonctionnalités
54 différentes, ou utilisation de différentes méthodes pour
55 implémenter la même fonctionnalité le plus efficacement possible.
56 Apache httpd s'est toujours accomodé d'une grande variété d'environnements
57 grâce à sa conception modulaire. Cette conception autorise le webmaster
58 à choisir quelles fonctionnalités seront incluses
59 dans le serveur en sélectionnant les modules à charger soit à la
60 compilation, soit à l'exécution.</p>
62 <p>Le serveur HTTP Apache 2.0 a étendu cette conception modulaire aux
64 élémentaires d'un serveur web. Le serveur est fourni avec une variété de
65 Modules Multi-Processus (MPMs) qui
66 sont responsables de l'association aux ports réseau de la machine,
67 acceptent les requêtes, et se chargent de répartir ces dernières
68 entre les différents processus enfants.</p>
70 <p>L'extension de la conception modulaire à ce niveau du serveur
71 comporte deux avantages importants :</p>
74 <li>Apache httpd peut supporter plus proprement et efficacement une grande
75 variété de systèmes d'exploitation. En particulier, la version Windows
76 du serveur est maintenant beaucoup plus efficace, depuis que
77 <code class="module"><a href="./mod/mpm_winnt.html">mpm_winnt</a></code> peut utiliser les fonctionnalités réseau
78 natives à la place de la couche POSIX utilisée par
79 Apache httpd 1.3. Cet avantage s'étend aussi aux systèmes d'exploitation
80 qui implémentent des MPMs spécialisés.</li>
82 <li>le serveur est plus à même de répondre aux besoins d'un site
83 particulier. Par exemple, les sites qui sont très sollicités peuvent
84 utiliser un MPM threadé comme
85 <code class="module"><a href="./mod/worker.html">worker</a></code> ou <code class="module"><a href="./mod/event.html">event</a></code>, tandis que les sites
86 qui privilégient la stabilité ou la compatibilité avec des logiciels
87 plus anciens peuvent utiliser un module comme
88 <code class="module"><a href="./mod/prefork.html">prefork</a></code>.</li>
91 <p>Du point de vue de l'utilisateur, les MPMs ne sont pas différents des
92 autres modules Apache httpd. La principale différence réside dans le fait qu'un
93 et un seul MPM à la fois doit être chargé
94 lorsque le serveur s'exécute. La liste des
95 MPMs disponibles est fournie dans <a href="mod/">l'index des
98 </div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
100 <h2><a name="defaults" id="defaults">MPM par défaut</a></h2>
102 <p>La table suivante fournit la liste des MPMs par défaut pour divers
103 systèmes d'exploitation. Il s'agit du MPM qui sera utilisé si
104 vous n'en spécifiez pas un autre à la compilation.</p>
106 <table class="bordered"><tr><td>Netware</td><td><code class="module"><a href="./mod/mpm_netware.html">mpm_netware</a></code></td></tr>
107 <tr class="odd"><td>OS/2</td><td><code class="module"><a href="./mod/mpmt_os2.html">mpmt_os2</a></code></td></tr>
108 <tr><td>Unix</td><td><code class="module"><a href="./mod/prefork.html">prefork</a></code>, <code class="module"><a href="./mod/worker.html">worker</a></code>,
109 ou <code class="module"><a href="./mod/event.html">event</a></code>, selon les possibilités de la plate-forme</td></tr>
110 <tr class="odd"><td>Windows</td><td><code class="module"><a href="./mod/mpm_winnt.html">mpm_winnt</a></code></td></tr>
113 <div class="note"><p>Ici, 'Unix' sous-entend les systèmes d'exploitation de type
114 Unix, comme Linux, BSD, Solaris, Mac OS X, etc...</p></div>
116 <p>Dans le cas des systèmes d'exploitation de type Unix, le choix du MPM
117 à installer est orienté par deux questions :</p>
118 <p>1. Est-ce que le système supporte les threads ?</p>
119 <p>2. Est-ce que le système supporte le polling thread-safe (et en
120 particulier les fonctions kqueue et epoll) ?</p>
122 <p>Si la réponse aux deux questions est 'oui', le MPM par défaut sera
123 <code class="module"><a href="./mod/event.html">event</a></code>.</p>
125 <p>Si la réponse à la première question est 'oui', et la réponse à la
126 deuxième 'non', le MPM par défaut sera <code class="module"><a href="./mod/worker.html">worker</a></code>.</p>
128 <p>Si la réponse aux deux questions est 'non', le MPM par défaut sera
129 <code class="module"><a href="./mod/prefork.html">prefork</a></code>.</p>
131 <p>En pratique, cela signifie que le MPM par défaut sera presque
132 toujours <code class="module"><a href="./mod/event.html">event</a></code> car tous les systèmes d'exploitation
133 modernes satisfont aux deux conditions.</p>
135 </div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
136 <div class="section">
137 <h2><a name="static" id="static">Compiler un module MPM en tant que module
140 <p>Les modules MPM peuvent être compilés en tant que modules
141 statiques sur toutes les plates-formes. A la compilation d'Apache, un
142 seul module MPM doit être choisi pour être compilé et lié avec le
143 serveur. La recompilation du serveur sera donc nécessaire si vous
144 souhaitez changer de module MPM.</p>
146 <p>Pour choisir un module MPM autre que le MPM par défaut,
148 <code>--with-mpm=<em>NOM</em></code> du script
149 <code class="program"><a href="./programs/configure.html">configure</a></code>. <em>NOM</em> est le nom
152 <p>Une fois le serveur compilé, il est possible de savoir quel MPM
153 a été choisi à l'aide de la commande <code>./httpd -l</code>.
154 Cette commande fournit la liste de tous les modules compilés
155 avec le serveur, y compris le MPM.</p>
157 </div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
158 <div class="section">
159 <h2><a name="dynamic" id="dynamic">Compiler un module MPM en tant que module
160 DSO (Dynamic Shared Object)</a></h2>
162 <p>Sous Unix et les plates-formes similaires, les modules MPM
163 peuvent être compilés en tant que modules DSO et chargés
164 dynamiquement dans le serveur comme tout module DSO. Compiler les
165 modules MPM en tant que modules DSO permet de changer de MPM en
166 modifiant la directive <code class="directive"><a href="./mod/mod_so.html#loadmodule">LoadModule</a></code> concernée, sans avoir à
167 recompiler le serveur.</p>
169 <pre class="prettyprint lang-config">LoadModule mpm_prefork_module modules/mod_mpm_prefork.so</pre>
172 <p>Toute tentative de charger plusieurs modules MPM via la directive
173 <code class="directive"><a href="./mod/mod_so.html#loadmodule">LoadModule</a></code> empêchera le
174 serveur de démarrer et affichera l'erreur suivante :</p>
176 <div class="example"><p><code>AH00534: httpd: Configuration error: More than one MPM
177 loaded.</code></p></div>
179 <p>Cette fonctionnalité est activée via l'option
180 <code>--enable-mpms-shared</code> du script
181 <code class="program"><a href="./programs/configure.html">configure</a></code>. Si on ajoute l'argument
182 <code><em>all</em></code>, tous les modules MPM disponibles sur la
183 plate-forme considérée seront installés. Cet argument peut aussi
184 contenir une liste de modules MPM à installer.</p>
186 <p>Le module MPM par défaut, sélectionné automatiquement ou spécifié
187 via l'option <code>--with-mpm</code> du script
188 <code class="program"><a href="./programs/configure.html">configure</a></code>, sera chargé via une directive
189 <code class="directive"><a href="./mod/mod_so.html#loadmodule">LoadModule</a></code> du fichier de
190 configuration du serveur généré. Pour choisir un autre module MPM,
191 vous devrez donc modifier cette directive</p>
194 <div class="bottomlang">
195 <p><span>Langues Disponibles: </span><a href="./de/mpm.html" hreflang="de" rel="alternate" title="Deutsch"> de </a> |
196 <a href="./en/mpm.html" hreflang="en" rel="alternate" title="English"> en </a> |
197 <a href="./es/mpm.html" hreflang="es" rel="alternate" title="Español"> es </a> |
198 <a href="./fr/mpm.html" title="Français"> fr </a> |
199 <a href="./ja/mpm.html" hreflang="ja" rel="alternate" title="Japanese"> ja </a> |
200 <a href="./ko/mpm.html" hreflang="ko" rel="alternate" title="Korean"> ko </a> |
201 <a href="./tr/mpm.html" hreflang="tr" rel="alternate" title="Türkçe"> tr </a> |
202 <a href="./zh-cn/mpm.html" hreflang="zh-cn" rel="alternate" title="Simplified Chinese"> zh-cn </a></p>
203 </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&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>
204 <script type="text/javascript"><!--//--><![CDATA[//><!--
205 var comments_shortname = 'httpd';
206 var comments_identifier = 'http://httpd.apache.org/docs/trunk/mpm.html';
208 if (w.location.hostname.toLowerCase() == "httpd.apache.org") {
209 d.write('<div id="comments_thread"><\/div>');
210 var s = d.createElement('script');
211 s.type = 'text/javascript';
213 s.src = 'https://comments.apache.org/show_comments.lua?site=' + comments_shortname + '&page=' + comments_identifier;
214 (d.getElementsByTagName('head')[0] || d.getElementsByTagName('body')[0]).appendChild(s);
217 d.write('<div id="comments_thread">Comments are disabled for this page at the moment.<\/div>');
219 })(window, document);
220 //--><!]]></script></div><div id="footer">
221 <p class="apache">Copyright 2016 The Apache Software Foundation.<br />Autorisé sous <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.</p>
222 <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[//><!--
223 if (typeof(prettyPrint) !== 'undefined') {