Optimizar la cantidad de clientes que atiende Apache
De Master Solutions Wiki
(Diferencias entre revisiones)
Línea 38: | Línea 38: | ||
MaxRequestsPerChild 0 | MaxRequestsPerChild 0 | ||
</IfModule> | </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" |
Revisión de 15:58 15 abr 2020
Contenido |
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
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
Calculo de RAM de los demas procesos
ps -N -ylC httpd_prefork --sort:rss | awk '{SUM += $8} END {print SUM/1024}'
Supongamos 1.400Mb
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
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"