Optimizar la cantidad de clientes que atiende Apache
De Master Solutions Wiki
(Diferencias entre revisiones)
(→Calculo de RAM por procesos apache) |
(→Calculo de RAM de los demas procesos) |
||
Línea 12: | Línea 12: | ||
== Calculo de RAM de los demas procesos == | == Calculo de RAM de los demas procesos == | ||
− | ps -N -ylC | + | ps -N -ylC httpd-prefork --sort:rss | awk '{SUM += $8} END {print SUM/1024}' |
Supongamos 1.400Mb | Supongamos 1.400Mb |
Última revisión de 16:02 15 abr 2020
Contenido |
[editar] Introduccion
El Servidor apache viene. configurado para atender 150 clientes, que a veces no es suficiente. Mostraremos como calcular la cantidad máxima que puede atender en función a las capacidades de nuestro equipo
[editar] Calculo de RAM por procesos apache
ps -ylC httpd-prefork --sort:rss | awk '{SUM += $8; I += 1} END {print SUM/I/1024}'
Supongamos 21Mb
Este valor se expresa en Megabytes
[editar] Calculo de RAM de los demas procesos
ps -N -ylC httpd-prefork --sort:rss | awk '{SUM += $8} END {print SUM/1024}'
Supongamos 1.400Mb
[editar] Calculo de cantidad de conexiones
Si por ejemplo nuestro servidor tiene 16Gb de RAM el calculo será el siguiente
(RAM del servidor - RAM de procesos no apache) / RAM por conexión Apache = Cantidad de clientes
(16384 - 1400) / 21 = 713
De esto tomamos un 70% lo que nos da unas 500 conexiones
[editar] Configurar apache
Apache por defecto tiene configurado el modulo de la siguiente forma:
<IfModule mpm_prefork_module> StartServers 5 MinSpareServers 5 MaxSpareServers 10 MaxClients 150 MaxRequestsPerChild 0 </IfModule>
Lo modificamos para que queda de la siguiente forma:
<IfModule mpm_prefork_module> StartServers 5 MinSpareServers 5 MaxSpareServers 10 ServerLimit 500 MaxClients 470 MaxRequestsPerChild 0 </IfModule>
Digamos que hicimos un configuración a la "defensiva"