1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
|
<?xml version='1.0' encoding='UTF-8' ?>
<!DOCTYPE manualpage SYSTEM "./style/manualpage.dtd">
<?xml-stylesheet type="text/xsl" href="./style/manual.es.xsl"?>
<!-- English Revision: 421174 -->
<!--
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>Módulos de MultiProcesamiento (MPMs)</title>
<summary>
<p>Este documento explica que son los Módulos de
Multiprocesamiento y como los usa Apache.</p>
</summary>
<section id="introduction"><title>Introducción</title>
<p>Apache está diseñado para ser un servidor web potente
y flexible que pueda funcionar en la más amplia variedad de
plataformas y entornos. Las diferentes plataformas y los
diferentes entornos, hacen que a menudo sean necesarias diferentes
características o funcionalidades, o que una misma
característica o funcionalidad sea implementada de diferente
manera para obtener una mayor eficiencia. Apache se ha adaptado
siempre a una gran variedad de entornos a través de su
diseño modular. Este diseño permite a los
administradores de sitios web elegir que funcionalidades van a ser
incluidas en el servidor seleccionando que módulos se van a
usar, ya sea al compilar o al ejecutar el servidor.</p>
<p>Apache 2.0 extiende este diseño modular hasta las
funcionalidades más básicas de un servidor web. El
servidor viene con una serie de Módulos de MultiProcesamiento
que son los responsables de conectar con los puertos de red de la
máquina, acceptar las peticiones, y generar los procesos hijo
que se encargan de servirlas.</p>
<p>La extensión del diseño modular a este nivel del
servidor ofrece dos beneficios importantes:</p>
<ul>
<li>Apache puede soportar de una forma más fácil y
eficiente una amplia variedad de sistemas operativos. En
concreto, la versión de Windows de Apache es mucho más
eficiente, porque el módulo <module>mpm_winnt</module>
puede usar funcionalidades nativas de red en lugar de usar la
capa POSIX como hace Apache 1.3. Este beneficio se extiende
también a otros sistemas operativos que implementan sus
respectivos MPMs.</li>
<li>El servidor puede personalizarse mejor para las necesidades
de cada sitio web. Por ejemplo, los sitios web que necesitan
más que nada escalibildad pueden usar un MPM hebrado como
<module>worker</module>, mientras que los sitios web que
requieran por encima de otras cosas estabilidad o compatibilidad
con software antiguo pueden usar
<module>prefork</module>. Además, se pueden configurar
funcionalidades especiales como servir diferentes hosts con
diferentes identificadores de usuario
(<module>perchild</module>).</li>
</ul>
<p>A nivel de usuario, los módulos de multiprocesamiento
(MPMs) son como cualquier otro módulo de Apache. La
diferencia más importante es que solo un MPM puede estar
cargado en el servidor en un determinado momento. La lista de MPMs
disponibles está en la <a href="mod/">sección de
índice de módulos</a>.</p>
</section>
<section id="choosing"><title>Cómo Elegir un MPM</title>
<p>Los módulos de multiprocesamiento que se van a usar
posteriormente deben elegirse durante el proceso de
configuración, y deben ser compilados en el servidor. Los
compiladores son capaces de optimizar muchas funciones si se usan
hebras, pero solo si se sabe que se están usando hebras.</p>
<p>Para elegir el módulo de multiprocesamiento deseado, use
el argumento <code>--with-mpm= <em>NAME</em></code> con el script
<program>configure</program>. <em>NAME</em> es el nombre del MPM
deseado.</p>
<p>Una vez que el servidor ha sido compilado, es posible
determinar que módulos de multiprocesamiento ha sido elegido
usando <code>./httpd -l</code>. Este comando lista todos los
módulos compilados en el servidor, incluido en MPM.</p>
</section>
<section id="defaults"><title>MPM por defecto</title>
<p>En la siguiente tabla se muestran los módulos de
multiprocesamiento por defecto para varios sistemas operativos. Estos
serán los módulos de multiprocesamiento seleccionados si no
se especifica lo contrario al compilar.</p>
<table>
<columnspec><column width=".2"/><column width=".2"/></columnspec>
<tr><td>BeOS</td><td><module>beos</module></td></tr>
<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></td></tr>
<tr><td>Windows</td><td><module>mpm_winnt</module></td></tr>
</table>
</section>
</manualpage>
|