Versi�n 2.4 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 en tiempo de ejecuci�n.
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, aceptar 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
.
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.
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.
Netware | mpm_netware |
OS/2 | mpmt_os2 |
Unix | prefork , worker , or
event , depending on platform capabilities |
Windows | mpm_winnt |
aqu�, 'Unix' se usa para designar a los sistemas operativos "Unix-like", como Linux, BSD, Solaris, Mac OS X, etc.
En el caso de los Unix, la decisi�n de que MPM se va a instalar depende de dos pregunas:
1. �Nos permite el Sistema Operativo hilos?
2. -�Nos permite el sistema operativo soporte a pila de hilos seguros (Especificamente, las funciones kqueue y epoll)?