El archivo 00-mpm.conf
es un archivo de configuración crucial para el servidor web Apache. Su función principal es especificar el Módulo de Procesamiento Múltiple (MPM) que Apache utilizará para manejar las solicitudes de los usuarios. Los MPM son responsables de cómo Apache administra los procesos hijo, que son los encargados de atender las peticiones entrantes.
¿Qué es un MPM?
Los MPM son componentes esenciales de Apache que determinan la forma en que el servidor maneja la concurrencia y la carga de trabajo. Cada MPM tiene sus propias características y se adapta mejor a diferentes escenarios de uso. Los tres MPM principales incluidos con Apache son:
- Prefork: Este MPM es el predeterminado en Apache y crea un proceso hijo por cada solicitud posible. Es ideal para entornos con bajo tráfico y poca memoria disponible.
- Worker: Este MPM utiliza un modelo de hilos en lugar de procesos hijos, lo que lo hace más eficiente en el uso de recursos y adecuado para manejar un mayor volumen de solicitudes.
- Event: Este MPM es el más reciente y utiliza una arquitectura de eventos asincrónica para manejar un gran número de conexiones simultáneas con un uso mínimo de memoria.
¿Qué define el archivo 00-mpm.conf?
El archivo 00-mpm.conf
contiene directivas que establecen el MPM que Apache debe cargar y las configuraciones específicas para ese MPM. Por ejemplo, si deseas utilizar el MPM Worker, el archivo 00-mpm.conf
podría incluir directivas como:
LoadModule mpm_worker_module modules/mod_mpm_worker.so
<IfModule mpm_worker_module>
WorkerThreads 17
MaxConnectionsPerChild 4000
</IfModule>
Estas directivas cargan el módulo mod_mpm_worker
, especifican el número de subprocesos de trabajo y el límite máximo de conexiones por proceso hijo.
¿Dónde se encuentra el archivo 00-mpm.conf?
La ubicación del archivo 00-mpm.conf
varía según la distribución de Linux y la instalación de Apache. En general, se encuentra en uno de los siguientes directorios:
/etc/apache2/conf.d/00-mpm.conf
(en Ubuntu/Debian)/etc/httpd/conf.d/00-mpm.conf
(en RedHat/CentOS)
Es importante tener en cuenta que:
- Editar el archivo
00-mpm.conf
requiere privilegios administrativos y una comprensión adecuada de los MPM y las directivas de configuración de Apache. - Modificar este archivo incorrectamente puede provocar problemas de estabilidad o errores en el servidor web.
- Se recomienda consultar la documentación oficial de Apache para obtener información detallada sobre los MPM y las directivas de configuración relacionadas.
Puedes cambiarlo al modo de evento, trabajador o prefork (predeterminado) en el archivo 00-mpm.conf, cuya ruta es /etc/httpd/conf.modules.d.
# sudo cat >> /etc/httpd/conf/httpd.conf <<-'EOF'
<IfModule prefork.c>
ServerLimit 20
StartServers 15
MinSpareServers 5
MaxSpareServers 10
MaxClients 15
MaxRequestsPerChild 25
</IfModule>
EOF