Versi�n 2.2 del Servidor HTTP Apache
Este documento describe que es un M�dulo de Multiprocesamiento y como los usa Apache.
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 caracter�sticas van a ser incluidas en el servidor seleccionando que m�dulos se van a cargar, ya sea al compilar o al ejecutar el servidor.
Apache 2.0 extiende este dise�o modular hasta las funciones m�s b�sicas de un servidor web. El servidor viene con una serie de M�dulos de MultiProcesamiento que son 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.
La extensi�n del dise�o modular a este nivel del servidor ofrece dos beneficios importantes:
mpm_winnt
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.worker
, mientras que los sitios web que
requieran por encima de otras cosas estabilidad o compatibilidad
con software antiguo pueden usar
prefork
. Adem�s, se pueden configurar
funcionalidades especiales como servir diferentes hosts con
diferentes identificadores de usuario
(perchild
).A nivel de usuario, los 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 secci�n �ndice de M�dulos.
Los MPMs 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. Como algunos MPM usan hebras en Unix y otros no, Apache tendr� un mejor rendimiento si el MPM es elegido en el momento de compilar y est� incorporado en el servidor.
Para elegir el MPM deseado, use el argumento --with-mpm= NAME con el script ./configure. NAME es el nombre del MPM deseado.
Una vez que el servidor ha sido compilado, es posible
determinar que MPM ha sido elegido usando ./httpd
-l
. Este comando lista todos los m�dulos compilados en
el servidor, incluido en MPM.
En la siguiente tabla se muestran los MPMs por defecto para varios sistemas operativos. Estos ser�n los MPM seleccionados si no se especifica lo contrario al compilar.
BeOS | beos |
Netware | mpm_netware |
OS/2 | mpmt_os2 |
Unix | prefork |
Windows | mpm_winnt |