1 <?xml version="1.0" encoding="ISO-8859-1" ?>
2 <!DOCTYPE manualpage SYSTEM "./style/manualpage.dtd">
3 <?xml-stylesheet type="text/xsl" href="./style/manual.fr.xsl"?>
4 <!-- French translation : Lucien GENTIS -->
5 <!-- Reviewed by : Vincent Deffontaines -->
6 <!-- English Revision: 420990 -->
9 Licensed to the Apache Software Foundation (ASF) under one or more
10 contributor license agreements. See the NOTICE file distributed with
11 this work for additional information regarding copyright ownership.
12 The ASF licenses this file to You under the Apache License, Version 2.0
13 (the "License"); you may not use this file except in compliance with
14 the License. You may obtain a copy of the License at
16 http://www.apache.org/licenses/LICENSE-2.0
18 Unless required by applicable law or agreed to in writing, software
19 distributed under the License is distributed on an "AS IS" BASIS,
20 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
21 See the License for the specific language governing permissions and
22 limitations under the License.
25 <manualpage metafile="mpm.xml.meta">
27 <title>Modules multi-processus (MPMs)</title>
30 <p>Ce document décrit ce qu'est un Module Multi-Processus, ainsi
31 que la manière dont ces modules sont utilisés par le serveur HTTP Apache.</p>
34 <section id="introduction"><title>Introduction</title>
36 <p>Le serveur HTTP Apache a été conçu comme un serveur web puissant et
37 flexible pouvant fonctionner sur une très grande variété de
38 plateformes et toute une gamme d'environnements différents. Plateformes
39 différentes et environnements différents signifient souvent fonctionnalités
40 différentes, ou utilisation de différentes méthodes pour
41 implémenter la même fonctionnalité le plus efficacement possible.
42 Apache s'est toujours accomodé d'une grande variété d'environnements
43 grâce à sa conception modulaire. Cette conception autorise le webmaster
44 à choisir quelles fonctionnalités seront incluses
45 dans le serveur en sélectionnant les modules à charger soit à la
46 compilation, soit à l'exécution.</p>
48 <p>Apache 2.0 étend cette conception modulaire aux fonctions les plus
49 élémentaires d'un serveur web. Certains Modules Multi-Processus (MPMs)
50 sont responsables de l'association aux ports réseau de la machine,
51 acceptent les requêtes, et se chargent de répartir ces dernières
52 entre les différents processus enfants.</p>
54 <p>L'extension de la conception modulaire à ce niveau du serveur
55 comporte deux avantages importants :</p>
58 <li>Apache peut supporter plus proprement et efficacement une grande
59 variété de systèmes d'exploitation. En particulier, la version Windows
60 d'Apache est maintenant beaucoup plus efficace, depuis que
61 <module>mpm_winnt</module> peut utiliser les fonctionnalités réseau
62 natives à la place de la couche POSIX utilisée par
63 Apache 1.3. Cet avantage s'étend aussi aux systèmes d'exploitation
64 qui implémentent des MPMs spécialisés.</li>
66 <li>le serveur est plus à même de répondre aux besoins d'un site
67 particulier. Par exemple, les sites qui sont très sollicités peuvent
68 utiliser un MPM threadé comme
69 <module>worker</module> ou <module>event</module>, tandis que les sites
70 qui privilégient la stabilité ou la compatibilité avec des logiciels
71 plus anciens peuvent utiliser un module comme
72 <module>prefork</module>.</li>
75 <p>Du point de vue de l'utilisateur, les MPMs ne sont pas différents des
76 autres modules Apache. La principale différence réside dans le fait qu'un
77 et un seul MPM à la fois doit être chargé dans le serveur. La liste des
78 MPMs disponibles est fournie dans <a href="mod/">module index page</a>.</p>
82 <section id="choosing"><title>Choisir un MPM</title>
84 <p>Les MPMs doivent être choisis à la configuration, et compilés avec
85 le serveur. Les compilateurs peuvent optimiser de nombreuses fonctions
86 si les threads sont utilisés, mais seulement s'ils savent que les threads
87 sont utilisés.</p>
89 <p>Pour le choix proprement dit du MPM désiré, utiliser l'argument
90 <code>--with-mpm=<em>NOM</em></code> du script
91 <program>configure</program>. <em>NOM</em> est le nom
92 du MPM désiré.</p>
94 <p>Une fois le serveur compilé, il est possible de savoir quel MPM
95 a été choisi à l'aide de la commande <code>./httpd -l</code>.
96 Cette commande fournit la liste de tous les modules compilés
97 avec le serveur, y compris le MPM.</p>
100 <section id="defaults"><title>MPM par défaut</title>
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 sélectionné si vous ne précisez
104 pas un choix différent à la compilation.</p>
107 <columnspec><column width=".2"/><column width=".2"/></columnspec>
108 <tr><td>BeOS</td><td><module>beos</module></td></tr>
109 <tr><td>Netware</td><td><module>mpm_netware</module></td></tr>
110 <tr><td>OS/2</td><td><module>mpmt_os2</module></td></tr>
111 <tr><td>Unix</td><td><module>prefork</module></td></tr>
112 <tr><td>Windows</td><td><module>mpm_winnt</module></td></tr>