optimizar apache
August 29th, 2007
Apache es hoy en día uno de los servidores web más usados, desde companias de hosting hasta companias grandes.
Una de las cosas más dificiles es optimizar apache para que consuma poco CPU y MEMORIA. (Probado en servidores Freebsd / unix)
Optimizar apache para consumir menos CPU y MEMORIA
TimeOut
Yo recomendaría esta directiva en 120 y 300 segundos, Esto interfiere en el envio de archivos mediante formularios, peticiones TCP, GET, etc. Por ende hay que saber como setearlo dependiendo el uso del servidor.
KeepAlive
Esta directiva lo que hace es especificar si se quieren conexiones persistentes con el servidor o no. En un principio pensé que consumia más, pero en realidad si se utiliza en ON, por lo general no solo consume menos sino que se crean menos conexiones al puerto 80.
KeepAliveTimeOut
Como dije anteriormente el KeepAlive es útil, pero es mejor siempre setear timeouts chicos, menores a 20 segundos, para que no consuma demasiado CPU.
MaxKeepAliveRequests
Recomendaría esta directiva arriba de 100, pero uds pueden setearla en cuanto quieran ya que mientras más tengan, más rendimiento tiene el servidor con respecto a los clientes.
MinSpareServers
Esta directiva la considero util, pero es una de las que más consume.. En la mayoria de los servidores que armé la setié en 5.
MaxSpareServers
Es recomendable que no sea mayor a 20
StartServers
Esta función la setearía en 8 comunmente, ya que determina cuantos procesos hijos inician al iniciar apache
MaxClients
Esto depende de la magnitud del servidor, yo lo tengo en 450, en otros en 250, varia depende la cantidad de visitas que tienen.
MaxRequestsPerChild
En este momento lo estoy testeando en 0 (ilimitado) para probar si la carga del servidor disminuye (Overload), caso contrario probar con valores un poco altos.
Hasta ahora vimos como optimizar apache para diferentes servidores, Vimos como optimizar PHP con apache y mod_rewrite para la indexación de google, y proximamente veremos como optimizar el codigo para que consuma menos memoria y tarde menos en ejecutarse.




