Muitos processos do Apache estão usando minha CPU usa sempre mais que 70%

1

Estou executando um painel plesk em 1and1. Eu tenho 120 sites em execução e todos estão usando pligg cms, cada site tem 600 visitantes por dia. Por favor, veja os detalhes do meu servidor abaixo:

HDD-1000GB RAM-16GB Processor-6 Core

Eu sempre vejo muitos processos do apache sendo executados na # visão de topo, então o servidor parece estar sobrecarregado. Se eu puder reduzir a quantidade de processos do apache, acho que o servidor estará ok. Mas não sei por que muitos processos apache estão sendo executados.

Por favor, veja o link abaixo para a captura de tela da minha # vista superior:

link

Algumas vezes eu vi muitos erros de conexão no painel de controle do plesk, então eu adicionei a linha abaixo em minha seção [mysqld]:

set-variable = max_connections = 416

Mas ainda não encontrei uma solução. Eu também adicionei maxclients e serverlimit 416 no arquivo config /etc/httpd/conf/httpd.conf

Mas ainda não há solução. Estou pesquisando há mais de 7 dias, mas não obtenho nenhuma solução. Por favor me ajude a resolver o problema.

Nos horários de pico, meus sites demoram muito para carregar, mas a hora fora do horário de pico está boa.

Por favor, ajude-me a descobrir o problema real.

    
por Barkat Ullah 13.04.2012 / 12:07

2 respostas

1

Você tem muita carga, como o EightBitTony sugeriu que você deve otimizar suas consultas. Se isso não for possível, separe seu servidor da Web e o servidor de banco de dados. Obtenha um servidor adicional que não faça nada além de responder a solicitações de banco de dados.

Verifique também se esta está na sua configuração do mysql:

  • thread_concurrency

Deve ser 12 no seu caso, mas você pode querer reduzi-lo para 10 ou 8 se quiser manter alguma CPU livre para o seu apache. Esse cara aqui explica algumas outras coisas que você pode querer fazer para ajustar o MySQL. Você ainda tem muita memória disponível, então você deve fazer o cache de mais consultas.

    
por 13.04.2012 / 13:17
3

Você tem muitos processos do apache porque tem muitos usuários conectados (navegadores). Se você limitar a contagem de conexões, alguns usuários terão a conexão recusada. Você também notará na tela que o mysql está usando 2,6 núcleos de CPU no seu servidor.

Você tem sites ocupados, precisa trabalhar para reduzir a carga, reduzindo os requisitos de processamento dos sites. Torne as consultas mais eficientes, reduza os tempos de processamento de scripts, etc. Sem saber o que seus sites fazem, não é possível fornecer conselhos mais específicos.

Basicamente - o seu servidor está ocupado porque está ocupado. Você não quer limitar as conexões (potencialmente), você quer tornar essas conexões mais eficientes.

    
por 13.04.2012 / 12:17