Entradas

Mostrando entradas de marzo, 2015

Apache : calcular tamaño memoria por proceso de apache y optimizar el valor de Maxclients

Para calcular el tamaño que está ocupando en memoria apache y sus procesos podemos usar el siguiente script en bash:  ps -ylC httpd | awk '{x += $8;y += 1} END  { print "Apache uso de memoria (MB): "x/1024;  print "Tamaño medio del proceso (MB): "x/((y-1)*1024);   print "Procesos apache: "y-1;   }' Ejemplo de salida Apache uso de memoria (MB): 1396.54 Tamaño medio del proceso (MB): 16.8257 Procesos apache: 83 Estos valores son útiles para optimizar el parámetro MaxClients en el fichero /etc/httpd/conf.d/ mpm_prefork.conf ( Centos 7 ) . Para calcular el Valor: MaxClients = (Total RAM en el sistema - RAM reserva para el resto del sistema) /  Tamaño medio del proceso Por ejemplo si tenemos una máquina con 16 GB, y queremos dedicar al apache el 80% de la memoria (3,2 GB) y el tamaño del proceso es de 17MB. MaxClients = (16GB - 3.2 GB) * 1024 / 17MB =771,0118 o equivalentemente MaxClients = ((16×1024) × 0,8) ÷ 17 = 771 SI querem