Frontend Nginx, backend do Apache, muitas conexões de espera de tempo

1

Estou usando o Apache como backend com suPHP e mod_sec e nginx como proxy frontend.

Isso funciona bem até agora, mas, por algum motivo, o Apache gera, de repente, tantos processos que a carga da CPU sobe muito. Eu já reduzi o worker_connections e todos os timeouts suspeitam que alguém está martelando demais o servidor, por exemplo, um bot ou mais, mas o problema persiste.

Eu verifiquei as conexões Time_Wait quando a carga da CPU sobe e em um ponto eu tive como 5000 TIME_WAIT. A carga da CPU estava passando pelo teto.

Alguma ideia do que mais posso fazer além de:

echo 1 > /proc/sys/net/ipv4/tcp_tw_reuse

Update: tw_reuse ajuda um pouco, mas tenho que analisá-lo um pouco. Há mais alguma coisa que eu possa tentar obter mais informações?

    
por mashup 15.04.2015 / 03:49

1 resposta

0

Analise os registros de acesso do nginx primeiro!

Se muitas solicitações de seus usuários reais precisarem ser configuradas ou atualizadas,

Se isso é bots ou parsers ruins, você precisa bloqueá-los e ajustar seus parâmetros de sistema.

Não altere nenhum sysctl params antes de não encontrar o problema.

    
por 15.04.2015 / 18:28

Tags