mirror of
https://github.com/apache/httpd.git
synced 2025-07-29 12:10:29 +00:00

git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.4.x@1820107 13f79535-47bb-0310-9956-ffa450edef68
227 lines
14 KiB
Plaintext
227 lines
14 KiB
Plaintext
<?xml version="1.0" encoding="ISO-8859-1"?>
|
||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||
<html xmlns="http://www.w3.org/1999/xhtml" lang="fr" xml:lang="fr"><head>
|
||
<meta content="text/html; charset=ISO-8859-1" http-equiv="Content-Type" />
|
||
<!--
|
||
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
|
||
This file is generated from xml source: DO NOT EDIT
|
||
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
|
||
-->
|
||
<title>Modules multi-processus (MPMs) - Serveur Apache HTTP Version 2.4</title>
|
||
<link href="./style/css/manual.css" rel="stylesheet" media="all" type="text/css" title="Main stylesheet" />
|
||
<link href="./style/css/manual-loose-100pc.css" rel="alternate stylesheet" media="all" type="text/css" title="No Sidebar - Default font size" />
|
||
<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" />
|
||
<script src="./style/scripts/prettify.min.js" type="text/javascript">
|
||
</script>
|
||
|
||
<link href="./images/favicon.ico" rel="shortcut icon" /></head>
|
||
<body id="manual-page"><div id="page-header">
|
||
<p class="menu"><a href="./mod/">Modules</a> | <a href="./mod/directives.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>
|
||
<p class="apache">Serveur Apache HTTP Version 2.4</p>
|
||
<img alt="" src="./images/feather.png" /></div>
|
||
<div class="up"><a href="./"><img title="<-" alt="<-" src="./images/left.gif" /></a></div>
|
||
<div id="path">
|
||
<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.4</a></div><div id="page-content"><div id="preamble"><h1>Modules multi-processus (MPMs)</h1>
|
||
<div class="toplang">
|
||
<p><span>Langues Disponibles: </span><a href="./de/mpm.html" hreflang="de" rel="alternate" title="Deutsch"> de </a> |
|
||
<a href="./en/mpm.html" hreflang="en" rel="alternate" title="English"> en </a> |
|
||
<a href="./es/mpm.html" hreflang="es" rel="alternate" title="Espa<70>ol"> es </a> |
|
||
<a href="./fr/mpm.html" title="Fran<61>ais"> fr </a> |
|
||
<a href="./ja/mpm.html" hreflang="ja" rel="alternate" title="Japanese"> ja </a> |
|
||
<a href="./ko/mpm.html" hreflang="ko" rel="alternate" title="Korean"> ko </a> |
|
||
<a href="./tr/mpm.html" hreflang="tr" rel="alternate" title="T<>rk<72>e"> tr </a> |
|
||
<a href="./zh-cn/mpm.html" hreflang="zh-cn" rel="alternate" title="Simplified Chinese"> zh-cn </a></p>
|
||
</div>
|
||
|
||
<p>Ce document d<>crit ce qu'est un Module Multi-Processus, ainsi
|
||
que la mani<6E>re dont ces modules sont utilis<69>s par le serveur HTTP Apache.</p>
|
||
</div>
|
||
<div id="quickview"><a href="https://www.apache.org/foundation/contributing.html" class="badge"><img src="https://www.apache.org/images/SupportApache-small.png" alt="Support Apache!" /></a><ul id="toc"><li><img alt="" src="./images/down.gif" /> <a href="#introduction">Introduction</a></li>
|
||
<li><img alt="" src="./images/down.gif" /> <a href="#defaults">MPM par d<>faut</a></li>
|
||
<li><img alt="" src="./images/down.gif" /> <a href="#static">Compiler un module MPM en tant que module
|
||
statique</a></li>
|
||
<li><img alt="" src="./images/down.gif" /> <a href="#dynamic">Compiler un module MPM en tant que module
|
||
DSO (Dynamic Shared Object)</a></li>
|
||
</ul><h3>Voir aussi</h3><ul class="seealso"><li><a href="#comments_section">Commentaires</a></li></ul></div>
|
||
<div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
|
||
<div class="section">
|
||
<h2><a name="introduction" id="introduction">Introduction</a></h2>
|
||
|
||
<p>La conception du serveur HTTP Apache en fait un serveur web puissant et
|
||
flexible pouvant fonctionner sur une tr<74>s grande vari<72>t<EFBFBD> de
|
||
plateformes et toute une gamme d'environnements diff<66>rents. Plateformes
|
||
diff<66>rentes et environnements diff<66>rents signifient souvent fonctionnalit<69>s
|
||
diff<66>rentes, ou utilisation de diff<66>rentes m<>thodes pour
|
||
impl<70>menter la m<>me fonctionnalit<69> le plus efficacement possible.
|
||
Apache httpd s'est toujours accomod<6F> d'une grande vari<72>t<EFBFBD> d'environnements
|
||
gr<67>ce <20> sa conception modulaire. Cette conception autorise le webmaster
|
||
<20> choisir quelles fonctionnalit<69>s seront incluses
|
||
dans le serveur en s<>lectionnant les modules <20> charger soit <20> la
|
||
compilation, soit <20> l'ex<65>cution.</p>
|
||
|
||
<p>Le serveur HTTP Apache 2.0 a <20>tendu cette conception modulaire aux
|
||
fonctions les plus
|
||
<20>l<EFBFBD>mentaires d'un serveur web. Le serveur est fourni avec une vari<72>t<EFBFBD> de
|
||
Modules Multi-Processus (MPMs) qui
|
||
sont responsables de l'association aux ports r<>seau de la machine,
|
||
acceptent les requ<71>tes, et se chargent de r<>partir ces derni<6E>res
|
||
entre les diff<66>rents processus enfants.</p>
|
||
|
||
<p>L'extension de la conception modulaire <20> ce niveau du serveur
|
||
comporte deux avantages importants :</p>
|
||
|
||
<ul>
|
||
<li>Apache httpd peut supporter plus proprement et efficacement une grande
|
||
vari<72>t<EFBFBD> de syst<73>mes d'exploitation. En particulier, la version Windows
|
||
du serveur est maintenant beaucoup plus efficace, depuis que
|
||
<code class="module"><a href="./mod/mpm_winnt.html">mpm_winnt</a></code> peut utiliser les fonctionnalit<69>s r<>seau
|
||
natives <20> la place de la couche POSIX utilis<69>e par
|
||
Apache httpd 1.3. Cet avantage s'<27>tend aussi aux syst<73>mes d'exploitation
|
||
qui impl<70>mentent des MPMs sp<73>cialis<69>s.</li>
|
||
|
||
<li>le serveur est plus <20> m<>me de r<>pondre aux besoins d'un site
|
||
particulier. Par exemple, les sites qui sont tr<74>s sollicit<69>s peuvent
|
||
utiliser un MPM thread<61> comme
|
||
<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
|
||
qui privil<69>gient la stabilit<69> ou la compatibilit<69> avec des logiciels
|
||
plus anciens peuvent utiliser un module comme
|
||
<code class="module"><a href="./mod/prefork.html">prefork</a></code>.</li>
|
||
</ul>
|
||
|
||
<p>Du point de vue de l'utilisateur, les MPMs ne sont pas diff<66>rents des
|
||
autres modules Apache httpd. La principale diff<66>rence r<>side dans le fait qu'un
|
||
et un seul MPM <20> la fois doit <20>tre charg<72>
|
||
lorsque le serveur s'ex<65>cute. La liste des
|
||
MPMs disponibles est fournie dans <a href="mod/">l'index des
|
||
modules</a>.</p>
|
||
|
||
</div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
|
||
<div class="section">
|
||
<h2><a name="defaults" id="defaults">MPM par d<>faut</a></h2>
|
||
|
||
<p>La table suivante fournit la liste des MPMs par d<>faut pour divers
|
||
syst<EFBFBD>mes d'exploitation. Il s'agit du MPM qui sera utilis<69> si
|
||
vous n'en sp<73>cifiez pas un autre <20> la compilation.</p>
|
||
|
||
<table class="bordered"><tr><td>Netware</td><td><code class="module"><a href="./mod/mpm_netware.html">mpm_netware</a></code></td></tr>
|
||
<tr class="odd"><td>OS/2</td><td><code class="module"><a href="./mod/mpmt_os2.html">mpmt_os2</a></code></td></tr>
|
||
<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>,
|
||
ou <code class="module"><a href="./mod/event.html">event</a></code>, selon les possibilit<69>s de la plate-forme</td></tr>
|
||
<tr class="odd"><td>Windows</td><td><code class="module"><a href="./mod/mpm_winnt.html">mpm_winnt</a></code></td></tr>
|
||
</table>
|
||
|
||
<div class="note"><p>Ici, 'Unix' sous-entend les syst<73>mes d'exploitation de type
|
||
Unix, comme Linux, BSD, Solaris, Mac OS X, etc...</p></div>
|
||
|
||
<p>Dans le cas des syst<73>mes d'exploitation de type Unix, le choix du MPM
|
||
<EFBFBD> installer est orient<6E> par deux questions :</p>
|
||
<p>1. Est-ce que le syst<73>me supporte les threads ?</p>
|
||
<p>2. Est-ce que le syst<73>me supporte le polling thread-safe (et en
|
||
particulier les fonctions kqueue et epoll) ?</p>
|
||
|
||
<p>Si la r<>ponse aux deux questions est 'oui', le MPM par d<>faut sera
|
||
<code class="module"><a href="./mod/event.html">event</a></code>.</p>
|
||
|
||
<p>Si la r<>ponse <20> la premi<6D>re question est 'oui', et la r<>ponse <20> la
|
||
deuxi<EFBFBD>me 'non', le MPM par d<>faut sera <code class="module"><a href="./mod/worker.html">worker</a></code>.</p>
|
||
|
||
<p>Si la r<>ponse aux deux questions est 'non', le MPM par d<>faut sera
|
||
<code class="module"><a href="./mod/prefork.html">prefork</a></code>.</p>
|
||
|
||
<p>En pratique, cela signifie que le MPM par d<>faut sera presque
|
||
toujours <code class="module"><a href="./mod/event.html">event</a></code> car tous les syst<73>mes d'exploitation
|
||
modernes satisfont aux deux conditions.</p>
|
||
|
||
</div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
|
||
<div class="section">
|
||
<h2><a name="static" id="static">Compiler un module MPM en tant que module
|
||
statique</a></h2>
|
||
|
||
<p>Les modules MPM peuvent <20>tre compil<69>s en tant que modules
|
||
statiques sur toutes les plates-formes. A la compilation d'Apache, un
|
||
seul module MPM doit <20>tre choisi pour <20>tre compil<69> et li<6C> avec le
|
||
serveur. La recompilation du serveur sera donc n<>cessaire si vous
|
||
souhaitez changer de module MPM.</p>
|
||
|
||
<p>Pour choisir un module MPM autre que le MPM par d<>faut,
|
||
utiliser l'argument
|
||
<code>--with-mpm=<em>NOM</em></code> du script
|
||
<code class="program"><a href="./programs/configure.html">configure</a></code>. <em>NOM</em> est le nom
|
||
du MPM d<>sir<69>.</p>
|
||
|
||
<p>Une fois le serveur compil<69>, il est possible de savoir quel MPM
|
||
a <20>t<EFBFBD> choisi <20> l'aide de la commande <code>./httpd -l</code>.
|
||
Cette commande fournit la liste de tous les modules compil<69>s
|
||
avec le serveur, y compris le MPM.</p>
|
||
|
||
</div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
|
||
<div class="section">
|
||
<h2><a name="dynamic" id="dynamic">Compiler un module MPM en tant que module
|
||
DSO (Dynamic Shared Object)</a></h2>
|
||
|
||
<p>Sous Unix et les plates-formes similaires, les modules MPM
|
||
peuvent <20>tre compil<69>s en tant que modules DSO et charg<72>s
|
||
dynamiquement dans le serveur comme tout module DSO. Compiler les
|
||
modules MPM en tant que modules DSO permet de changer de MPM en
|
||
modifiant la directive <code class="directive"><a href="./mod/mod_so.html#loadmodule">LoadModule</a></code> concern<72>e, sans avoir <20>
|
||
recompiler le serveur.</p>
|
||
|
||
<pre class="prettyprint lang-config">LoadModule mpm_prefork_module modules/mod_mpm_prefork.so</pre>
|
||
|
||
|
||
<p>Toute tentative de charger plusieurs modules MPM via la directive
|
||
<code class="directive"><a href="./mod/mod_so.html#loadmodule">LoadModule</a></code> emp<6D>chera le
|
||
serveur de d<>marrer et affichera l'erreur suivante :</p>
|
||
|
||
<div class="example"><p><code>AH00534: httpd: Configuration error: More than one MPM
|
||
loaded.</code></p></div>
|
||
|
||
<p>Cette fonctionnalit<69> est activ<69>e via l'option
|
||
<code>--enable-mpms-shared</code> du script
|
||
<code class="program"><a href="./programs/configure.html">configure</a></code>. Si on ajoute l'argument
|
||
<code><em>all</em></code>, tous les modules MPM disponibles sur la
|
||
plate-forme consid<69>r<EFBFBD>e seront install<6C>s. Cet argument peut aussi
|
||
contenir une liste de modules MPM <20> installer.</p>
|
||
|
||
<p>Le module MPM par d<>faut, s<>lectionn<6E> automatiquement ou sp<73>cifi<66>
|
||
via l'option <code>--with-mpm</code> du script
|
||
<code class="program"><a href="./programs/configure.html">configure</a></code>, sera charg<72> via une directive
|
||
<code class="directive"><a href="./mod/mod_so.html#loadmodule">LoadModule</a></code> du fichier de
|
||
configuration du serveur g<>n<EFBFBD>r<EFBFBD>. Pour choisir un autre module MPM,
|
||
vous devrez donc modifier cette directive</p>
|
||
|
||
</div></div>
|
||
<div class="bottomlang">
|
||
<p><span>Langues Disponibles: </span><a href="./de/mpm.html" hreflang="de" rel="alternate" title="Deutsch"> de </a> |
|
||
<a href="./en/mpm.html" hreflang="en" rel="alternate" title="English"> en </a> |
|
||
<a href="./es/mpm.html" hreflang="es" rel="alternate" title="Espa<70>ol"> es </a> |
|
||
<a href="./fr/mpm.html" title="Fran<61>ais"> fr </a> |
|
||
<a href="./ja/mpm.html" hreflang="ja" rel="alternate" title="Japanese"> ja </a> |
|
||
<a href="./ko/mpm.html" hreflang="ko" rel="alternate" title="Korean"> ko </a> |
|
||
<a href="./tr/mpm.html" hreflang="tr" rel="alternate" title="T<>rk<72>e"> tr </a> |
|
||
<a href="./zh-cn/mpm.html" hreflang="zh-cn" rel="alternate" title="Simplified Chinese"> zh-cn </a></p>
|
||
</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>
|
||
<script type="text/javascript"><!--//--><![CDATA[//><!--
|
||
var comments_shortname = 'httpd';
|
||
var comments_identifier = 'http://httpd.apache.org/docs/2.4/mpm.html';
|
||
(function(w, d) {
|
||
if (w.location.hostname.toLowerCase() == "httpd.apache.org") {
|
||
d.write('<div id="comments_thread"><\/div>');
|
||
var s = d.createElement('script');
|
||
s.type = 'text/javascript';
|
||
s.async = true;
|
||
s.src = 'https://comments.apache.org/show_comments.lua?site=' + comments_shortname + '&page=' + comments_identifier;
|
||
(d.getElementsByTagName('head')[0] || d.getElementsByTagName('body')[0]).appendChild(s);
|
||
}
|
||
else {
|
||
d.write('<div id="comments_thread">Comments are disabled for this page at the moment.<\/div>');
|
||
}
|
||
})(window, document);
|
||
//--><!]]></script></div><div id="footer">
|
||
<p class="apache">Copyright 2018 The Apache Software Foundation.<br />Autoris<69> sous <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.</p>
|
||
<p class="menu"><a href="./mod/">Modules</a> | <a href="./mod/directives.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[//><!--
|
||
if (typeof(prettyPrint) !== 'undefined') {
|
||
prettyPrint();
|
||
}
|
||
//--><!]]></script>
|
||
</body></html> |