NGINX usando 100% da CPU do servidor ao testar com Blitz.io

NGINX usando 100% da CPU do servidor ao testar com Blitz.io

Estou enfrentando um problema aqui e depois de quatro dias olhando em volta resolvi pedir ajuda aqui, afinal um milhão de cabeças podem pensar muito melhor que uma.

Eu tenho uma configuração de servidor Ubuntu 14.04 com NGINX, HHVM, PHP5-FPM (como backup), Percona MySQL, Memcached (que será substituído pelo Redis). Eu tenho a configuração fastcgi_cache para WordPress e cache de objetos feito no memcached. Tudo legal e elegante na teoria, mas não na prática.

Este é um VPS SSD RamNode OpenVZ com 2 GB de RAM e um Intel Xeon E5 com dois núcleos para meu VPS.

Ao executar o Blitz.io nele, o servidor é totalmente assassinado pelos dois processos de trabalho do NGINX, cada um usando 100% da CPU de acordo com top e htop. Normalmente corro com o seguinte padrão:

--pattern 999-1000:60 https://www.geeksune.com/blog/hello-world/

Isso faz com que a CPU vá às alturas e de acordo com Blitz.io este é o resultado disso:

135 ACESOS COM 57.734 ERROS E 234 TEMPOS LIMITE

Obviamente isso não é bom. O uso de RAM fica abaixo de 250 MB o tempo todo e parece que todas as solicitações do Blitz.io estão atingindo o cache, como pode ser visto aqui:

54.232.204.19 - HIT [23/Nov/2014:19:06:32 -0200] "GET / HTTP/1.1" 200 7632 "-" "blitz.io;[e-mail protegido]"

Observe o HIT no início. Eu configurei um novo formato de log e adicionei $upstream_cache_status a ele.

Uma configuração semelhante na mesma máquina funciona perfeitamente com o Blitz.io, então definitivamente há algo errado com minha configuração do NGINX e parece estar relacionado ao fastcgi_cache. Sempre tenho os mesmos resultados, mesmo com apenas PHP5-FPM com Zend.

Alguém tem alguma ideia do que está acontecendo? Meus arquivos de configuração ficam assim:

Desde já, obrigado.

:)

informação relacionada