.png)
la configuración de mi servidor es
Technology: Ivy Bridge
Processor: Intel Xeon E3 1245v2
Intel Smart Cache: 8MB
Cores: 4
Threads: 8
Frequency: 3.4GHz+
Turbo Boost: 3.8GHz
Virtualization: yes
RAM : 32 GB DDR3
Hard drive: Intel SSD 2 x 120GB
RAID: SOFT - 0/1
(RAID-1 by default)
NIC: GigaEthernet
Bandwidth: 200 Mbps guaranteed
Version: Parallels Plesk Panel v11.5.30_build115130819.13 os_CentOS 6
OS: CentOS 6.4 (Final)
Server Soft: Apache \ PHP
Ahora necesito saber qué configuré (Establecer valor máximo, que es lo que mi servidor acepta bien) para Nginx
worker_connections (what i set here);
worker_processes (what i set here);
MySQL
set-variable=max_connections= (what i set here)
set-variable=max_user_connections= (what i set here)
Cualquier otro agradecimiento por MySQL, Nginx y cualquier otra ayuda que me ayude a obtener más carga. Por favor, díganme que realmente necesito ayuda. Por favor, ayuden. Gracias.
Respuesta1
Al final, todos estos valores deben establecerse de acuerdo con lo que va a ejecutar en sus servidores Nginx y MySQL, por lo que no existe una fórmula mágica para responder su pregunta y ser correcto en todos los casos de uso posibles. Aún así, intenté reunir algunos datos que pueden llevarte a la respuesta a tus preguntas:
nginx
Respecto a Nginx worker_processes
eldocumentacióndice esto:
If Nginx is doing CPU-intensive work such as SSL or gzipping and you have 2 or
more CPUs/cores, then you may set worker_processes to be equal to the number
of CPUs or cores.
If you are serving a lot of static files and the total size of the files is
bigger than the available memory, then you may increase worker_processes to
fully utilize disk bandwidth.
En cuanto a worker_connections
, considere esta fórmula que obtuve deaquí:
max_clients = worker_processes * worker_connections
Entonces, una vez que conozca su worker_processes
valor, puede calcularlo worker_connections
en función de la cantidad máxima de clientes simultáneos que podría necesitar atender.
mysql
Con respecto al max_connections
valor de MySQL, debería intentar calcular cuántas conexiones necesitará en su MySQL simultáneamente en las horas pico. Por ejemplo, si su aplicación se ejecuta en PHP y tiene 32 procesos de trabajo PHP, y PHP es la única aplicación que accede a MySQL, probablemente sea seguro asumir que no necesitará más de 32 conexiones en MySQL. Tampoco desea establecer este valor demasiado alto, porque se debe asignar una gran cantidad de buffers para cada conexión, por lo que si el max_connections
valor es demasiado alto, corre el riesgo de que algo acabe con su MySQL al crear conexiones hasta que se queda sin memoria.
max_user_connections
es básicamente lo mismo, solo que en una base de usuarios de MySQL, en lugar de un valor global para todo el servidor MySQL.
En caso de que aún no lo hayas visto, aquí tienes los documentos relevantes: