O Apache atingiu o MaxRequestWorkers, mas nada no access_log

2

Isso está no Apache error_log:
[Qui Nov 17 17: 08: 22.935022 2016] [mpm_event: error] [pid 27241: tid 139681776355296] AH00484: o servidor atingiu a configuração MaxRequestWorkers, considere elevar a configuração MaxRequestWorkers

E no access_log não há nada entre 16:41 e 17:21.

Além disso, a Densidade do Servidor aparece às 17:08 (mesmo tempo que o Apache error_log)
- Média da Carga: 34
- php-cgi (nobody) Processos: 87
- php-cgi (nobody) CPU: 140%

Como é possível que o apache diga que atingiu o MaxRequestWorkers e não há nada em seu access_log nessa época?

Notas:

  • Eu corro alguns crons mas eles aparecem como um usuário (não como "nobody") e eles correm em php cli (então não via apache)
  • No htop, "nobody" geralmente tem / usr / sbin / httpd
  • Centos 6, WHM cPanel, Apache 2.4
por Skacc 17.11.2016 / 22:10

1 resposta

2

É um comportamento esperado. Todos os processos / threads do httpd estavam executando algumas tarefas php de longa duração para atender a várias sessões de usuários. Depois que o limite MaxRequestWorkers foi atingido, nenhuma outra solicitação foi atendida. Uma entrada aparece no access_log após a solicitação é concluída com algum status, como normal (200) ou tempo limite (502). Portanto, se nenhuma solicitação nova for concluída, não haverá linhas no access_log, mesmo se muitos navegadores estivessem tentando se conectar o tempo todo.

    
por 17.11.2016 / 22:37

Tags