mirror of
https://github.com/apache/httpd.git
synced 2025-08-16 17:04:42 +00:00

git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1103159 13f79535-47bb-0310-9956-ffa450edef68
151 lines
7.3 KiB
Plaintext
151 lines
7.3 KiB
Plaintext
<?xml version="1.0" encoding="ISO-8859-1" ?>
|
|
<!DOCTYPE manualpage SYSTEM "./style/manualpage.dtd">
|
|
<?xml-stylesheet type="text/xsl" href="./style/manual.fr.xsl"?>
|
|
<!-- French translation : Lucien GENTIS -->
|
|
<!-- Reviewed by : Vincent Deffontaines -->
|
|
<!-- English Revision: 927046 -->
|
|
|
|
<!--
|
|
Licensed to the Apache Software Foundation (ASF) under one or more
|
|
contributor license agreements. See the NOTICE file distributed with
|
|
this work for additional information regarding copyright ownership.
|
|
The ASF licenses this file to You under the Apache License, Version 2.0
|
|
(the "License"); you may not use this file except in compliance with
|
|
the License. You may obtain a copy of the License at
|
|
|
|
http://www.apache.org/licenses/LICENSE-2.0
|
|
|
|
Unless required by applicable law or agreed to in writing, software
|
|
distributed under the License is distributed on an "AS IS" BASIS,
|
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
See the License for the specific language governing permissions and
|
|
limitations under the License.
|
|
-->
|
|
|
|
<manualpage metafile="mpm.xml.meta">
|
|
|
|
<title>Modules multi-processus (MPMs)</title>
|
|
|
|
<summary>
|
|
<p>Ce document décrit ce qu'est un Module Multi-Processus, ainsi
|
|
que la manière dont ces modules sont utilisés par le serveur HTTP Apache.</p>
|
|
</summary>
|
|
|
|
<section id="introduction"><title>Introduction</title>
|
|
|
|
<p>La conception du serveur HTTP Apache en fait un serveur web puissant et
|
|
flexible pouvant fonctionner sur une très grande variété de
|
|
plateformes et toute une gamme d'environnements différents. Plateformes
|
|
différentes et environnements différents signifient souvent fonctionnalités
|
|
différentes, ou utilisation de différentes méthodes pour
|
|
implémenter la même fonctionnalité le plus efficacement possible.
|
|
Apache httpd s'est toujours accomodé d'une grande variété d'environnements
|
|
grâce à sa conception modulaire. Cette conception autorise le webmaster
|
|
à choisir quelles fonctionnalités seront incluses
|
|
dans le serveur en sélectionnant les modules à charger soit à la
|
|
compilation, soit à l'exécution.</p>
|
|
|
|
<p>Le serveur HTTP Apache 2.0 a étendu cette conception modulaire aux
|
|
fonctions les plus
|
|
élémentaires d'un serveur web. Certains Modules Multi-Processus (MPMs)
|
|
sont responsables de l'association aux ports réseau de la machine,
|
|
acceptent les requêtes, et se chargent de répartir ces dernières
|
|
entre les différents processus enfants.</p>
|
|
|
|
<p>L'extension de la conception modulaire à ce niveau du serveur
|
|
comporte deux avantages importants :</p>
|
|
|
|
<ul>
|
|
<li>Apache httpd peut supporter plus proprement et efficacement une grande
|
|
variété de systèmes d'exploitation. En particulier, la version Windows
|
|
du serveur est maintenant beaucoup plus efficace, depuis que
|
|
<module>mpm_winnt</module> peut utiliser les fonctionnalités réseau
|
|
natives à la place de la couche POSIX utilisée par
|
|
Apache httpd 1.3. Cet avantage s'étend aussi aux systèmes d'exploitation
|
|
qui implémentent des MPMs spécialisés.</li>
|
|
|
|
<li>le serveur est plus à même de répondre aux besoins d'un site
|
|
particulier. Par exemple, les sites qui sont très sollicités peuvent
|
|
utiliser un MPM threadé comme
|
|
<module>worker</module> ou <module>event</module>, tandis que les sites
|
|
qui privilégient la stabilité ou la compatibilité avec des logiciels
|
|
plus anciens peuvent utiliser un module comme
|
|
<module>prefork</module>.</li>
|
|
</ul>
|
|
|
|
<p>Du point de vue de l'utilisateur, les MPMs ne sont pas différents des
|
|
autres modules Apache httpd. La principale différence réside dans le fait qu'un
|
|
et un seul MPM à la fois doit être chargé
|
|
lorsque le serveur s'exécute. La liste des
|
|
MPMs disponibles est fournie dans <a href="mod/">l'indexe des
|
|
modules</a>.</p>
|
|
|
|
</section>
|
|
|
|
<section id="defaults"><title>MPM par défaut</title>
|
|
|
|
<p>La table suivante fournit la liste des MPMs par défaut pour divers
|
|
systèmes d'exploitation. Il s'agit du MPM qui sera utilisé si
|
|
vous n'en spécifiez pas un autre à la compilation.</p>
|
|
|
|
<table border="1" style="zebra">
|
|
<columnspec><column width=".2"/><column width=".2"/></columnspec>
|
|
<tr><td>Netware</td><td><module>mpm_netware</module></td></tr>
|
|
<tr><td>OS/2</td><td><module>mpmt_os2</module></td></tr>
|
|
<tr><td>Unix</td><td><module>prefork</module>, <module>worker</module>,
|
|
ou <module>event</module>, selon les possibilités de la plate-forme</td></tr>
|
|
<tr><td>Windows</td><td><module>mpm_winnt</module></td></tr>
|
|
</table>
|
|
</section>
|
|
|
|
<section id="static"><title>Compiler un module MPM en tant que module
|
|
statique</title>
|
|
|
|
<p>Les modules MPM peuvent être compilés en tant que modules
|
|
statiques sur toutes les plates-formes. A la compilation d'Apache, un
|
|
seul module MPM doit être choisi pour être compilé et lié 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
|
|
<program>configure</program>. <em>NOM</em> est le nom
|
|
du MPM désiré.</p>
|
|
|
|
<p>Une fois le serveur compilé, il est possible de savoir quel MPM
|
|
a été choisi à l'aide de la commande <code>./httpd -l</code>.
|
|
Cette commande fournit la liste de tous les modules compilés
|
|
avec le serveur, y compris le MPM.</p>
|
|
|
|
</section>
|
|
|
|
<section id="dynamic"><title>Compiler un module MPM en tant que module
|
|
DSO (Dynamic Shared Object)</title>
|
|
|
|
<p>Sous Unix et les plates-formes similaires, les modules MPM
|
|
peuvent être compilés en tant que modules DSO et chargé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 <directive
|
|
module="mod_so">LoadModule</directive> concernée, sans avoir à
|
|
recompiler le serveur.</p>
|
|
|
|
<p>Cette fonctionnalité est activée via l'option
|
|
<code>--enable-mpms-shared</code> du script
|
|
<program>configure</program>. Si on ajoute l'argument
|
|
<code><em>all</em></code>, tous les modules MPM disponibles sur la
|
|
plate-forme considérée seront installés. Cet argument peut aussi
|
|
contenir une liste de modules MPM à installer.</p>
|
|
|
|
<p>Le module MPM par défaut, sélectionné automatiquement ou spécifié
|
|
via l'option <code>--with-mpm</code> du script
|
|
<program>configure</program>, sera chargé via une directive
|
|
<directive module="mod_so">LoadModule</directive> du fichier de
|
|
configuration du serveur généré. Pour choisir un autre module MPM,
|
|
vous devrez donc modifier cette directive</p>
|
|
|
|
</section>
|
|
|
|
</manualpage>
|