Cómo mejorar el rendimiento de Apache

Si detectas constantes problemas en la carga de tus páginas, lentitud, caídas de servicio o cualquier problema relacionado con el servicio Web, sería recomendable revisar la configuración de Apache.

Es posible que la configuración no se adapte totalmente a las necesidades de cada uno, pero sirven como punto de referencia ya que han sido probadas en multitud de ocasiones y situaciones, demostrando un resultado óptimo.

Backup en la configuración de Apache

Lo primero que tienes que hacer es un backup de la configuración de Apache.

Normalmente el archivo de configuración de Apache se puede encontrar en

/etc/apache2/apache2.confpero dependiendo de la distribución puede encontrarse en otras ubicaciones como por ejemplo

/etc/httpd/conf/httpd.conf
cp /etc/apache2/apache2.conf /etc/apache2/apache2.conf.backup

O en el caso de ser httpd:

cp /etc/httpd/conf/httpd.conf /etc/httpd/conf/httpd.conf.backup

Edición de los diferentes valores

Una vez hecha la copia de seguridad, procede a editar los diferentes valores con la herramienta de edición que prefieras (vi, vim, nano,…). Por ejemplo:

vi/etc/apache2/apache2.conf

Para la configuración optimizada que proponemos tendrás que modificar los siguientes valores para que queden como a continuación:

Timeout 20
KeepAlive On
MaxKeepAliveRequest 64
KeepAliveTimeout 3
HostnameLookups Off

Luego deberás localizar la sección del módulo Prefork (ya que es el que se emplea normalmente) y tendrás que dejar los valores de la siguiente manera:

Si desconoces bajo qué MPM está funcionando tu Apache, ya sea mediante prefork o worker, puedes consultarlo siguiendo los pasos de nuestro artículo Ver si Apache está funcionando bajo Prefork o Worker

IfModule mpm_prefork_module>
StartServers 2
MinSpareServers 2
MaxSpareServers 5
ServerLimit 200
MaxClients 200
MaxRequestsPerChild 4000
/IfModule

Una vez realizados los cambios, guarda el archivo y reinicia el servicio para aplicarlos:

/etc/init.d/apache2 restart

O bien:

/etc/init.d/httpd restart

Si después de realizar estos cambios los problemas con Apache persisten, puedes revisar el log de error de Apache y buscar errores relacionados con MaxClients:

grep -i maxclient /var/log/apache2/error_log*

O bien:

grep -i maxclient /var/log/httpd/error_log*

Si el comando devuelve algún resultado de error relacionado, deberías modificar la configuración de las variables de MaxClients todavía más.

En el siguiente enlace puedes encontrar la documentación oficial de Apache referente a estos cambios y mucho más:
http://httpd.apache.org/docs-2.0/mod/mpm_common.html

Fuentes: Documentación de Apache, Documentación de MaxClients

Para comentar sobre este artículo, rellena el formulario. Los campos marcados con un asterisco (*) son obligatorios.