Limites de carga do servidor nginx e MySQL (depende da configuração do servidor)

Limites de carga do servidor nginx e MySQL (depende da configuração do servidor)

minha configuração do servidor é

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

Agora preciso saber o que defini (Definir valor máximo que é o meu servidor) 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)

Qualquer outro agradecimento por mysql, Nginx e qualquer outro me ajude a carregar mais carga, por favor, diga-me que eu realmente preciso de ajuda, por favor, ajude. Obrigado

Responder1

No final, todos esses valores devem ser definidos de acordo com o que você executará em seus servidores Nginx e MySQL, portanto, não existe uma fórmula mágica para responder sua pergunta e estar correto em todos os casos de uso possíveis. Mesmo assim tentei reunir alguns dados que podem levar você à resposta para suas perguntas:

Nginx

Em relação ao Nginx, worker_processesodocumentaçãodiz isto:

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.

Em relação a worker_connections, considere esta fórmula que recebi deaqui:

max_clients = worker_processes * worker_connections

Assim, depois de saber seu worker_processesvalor, você pode calculá-lo worker_connectionscom base no número máximo de clientes simultâneos que pode precisar atender.

MySQL

Em relação ao max_connectionsvalor no MySQL você deve tentar descobrir quantas conexões você precisará no seu MySQL simultaneamente no horário de pico. Por exemplo, se seu aplicativo é executado em PHP e você tem 32 processos de trabalho PHP, e o PHP é o único aplicativo que acessa o MySQL, provavelmente é seguro assumir que você não precisará de mais de 32 conexões no MySQL. Você também não deseja definir esse valor muito alto, porque um monte de buffers devem ser alocados para cada conexão; portanto, se o max_connectionsvalor for muito alto, você corre o risco de que algo mate seu MySQL criando conexões com ele até fica sem memória.

max_user_connectionsé basicamente a mesma coisa, apenas por base de usuário MySQL, em vez de um valor global para todo o servidor MySQL.

Caso você ainda não tenha visto, aqui estão os documentos relevantes:

max_connections/max_user_connections

informação relacionada