En un servidor de hosting, el número de conexiones simultáneas que un servidor puede manejar puede configurarse en diferentes niveles, dependiendo del tipo de servidor web y el entorno en el que esté configurado. Aquí te explico cómo se configura en los servidores web más comunes, como Apache, Nginx y PHP-FPM:
1. Apache
Apache permite configurar el número de conexiones simultáneas a través de sus módulos y directivas en el archivo de configuración principal, generalmente ubicado en /etc/apache2/apache2.conf
o /etc/httpd/httpd.conf
, dependiendo del sistema operativo.
Parámetros clave:
- MaxRequestWorkers: Define el número máximo de solicitudes simultáneas que Apache puede manejar.
<IfModule mpm_prefork_module>
MaxRequestWorkers 150
</IfModule>
- ServerLimit: Define el límite máximo de procesos que Apache puede lanzar.
<IfModule mpm_worker_module>
ServerLimit 256
</IfModule>
- MaxConnectionsPerChild: Define el número máximo de conexiones que cada proceso hijo maneja antes de ser reciclado.
MaxConnectionsPerChild 1000
Para aplicar estos cambios, después de editarlos, reinicia Apache con:
sudo systemctl restart apache2
2. Nginx
En Nginx, la configuración del número de conexiones simultáneas se controla principalmente a través de los siguientes parámetros en el archivo de configuración ubicado en /etc/nginx/nginx.conf
:
Parámetros clave:
- worker_processes: Define el número de procesos de trabajo de Nginx. Esto debería estar alineado con el número de núcleos de CPU del servidor.
worker_processes auto;
- worker_connections: Define el número máximo de conexiones que un solo proceso puede manejar simultáneamente.
worker_connections 1024;
- events: En esta sección, se pueden configurar parámetros de eventos de conexión, como el método de I/O utilizado.
events {
worker_connections 1024;
}
El número total de conexiones simultáneas que Nginx puede manejar es el producto de worker_processes
y worker_connections
.
Una vez que realices los cambios, reinicia Nginx con:
sudo systemctl restart nginx
3. PHP-FPM
Si tu aplicación web está utilizando PHP-FPM para manejar solicitudes PHP, también deberías configurar el número de conexiones concurrentes en el archivo php-fpm.conf
o en los archivos de pools, ubicados en /etc/php/7.4/fpm/pool.d/www.conf
(la ruta puede variar según la versión de PHP).
Parámetros clave:
- pm.max_children: Establece el número máximo de procesos de PHP-FPM que pueden estar activos al mismo tiempo.
pm.max_children = 50
- pm.start_servers: El número de procesos que se inician cuando el servicio comienza.
pm.start_servers = 5
- pm.max_spare_servers: Número máximo de procesos de reserva.
pm.max_spare_servers = 10
Después de hacer cambios, reinicia PHP-FPM:
sudo systemctl restart php7.4-fpm
Leave A Comment