PHP FPM continua pendurado

7

Eu tentei todos os tipos de opções, mas a cada dois dias (principalmente todos os dias) FPM pára de servir páginas e eu recebo um 502 (do servidor cherokee)

Os logs são preenchidos com os seguintes itens:

[15-Sep-2014 10:17:46] WARNING: [pool www] child 10135 exited on signal 11 (SIGSEGV - core dumped) after 15.512406 seconds from start
[15-Sep-2014 10:17:46] NOTICE: [pool www] child 10138 started
[15-Sep-2014 10:18:02] WARNING: [pool www] child 10138 exited on signal 11 (SIGSEGV - core dumped) after 15.657950 seconds from start
[15-Sep-2014 10:18:02] NOTICE: [pool www] child 10166 started
[15-Sep-2014 10:18:20] WARNING: [pool www] child 10212 exited on signal 11 (SIGSEGV - core dumped) after 10.192596 seconds from start
[15-Sep-2014 10:18:20] NOTICE: [pool www] child 10214 started
[15-Sep-2014 10:19:08] WARNING: [pool www] child 10216 exited on signal 11 (SIGSEGV - core dumped) after 42.754452 seconds from start
[15-Sep-2014 10:19:08] NOTICE: [pool www] child 10242 started
[15-Sep-2014 10:20:22] WARNING: [pool www] child 10332 exited on signal 11 (SIGSEGV - core dumped) after 14.862183 seconds from start
[15-Sep-2014 10:20:22] NOTICE: [pool www] child 10494 started
[15-Sep-2014 10:20:48] WARNING: [pool www] child 10494 exited on signal 11 (SIGSEGV - core dumped) after 26.415409 seconds from start
[15-Sep-2014 10:20:48] NOTICE: [pool www] child 10498 started
[15-Sep-2014 10:32:48] WARNING: [pool www] child 11718 exited on signal 11 (SIGSEGV - core dumped) after 21.319360 seconds from start
[15-Sep-2014 10:32:48] NOTICE: [pool www] child 11720 started

E toda vez que isso acontece, o último log é semelhante a

[15-Sep-2014 11:01:34] WARNING: [pool www] server reached max_children setting (50), consider raising it

Estas são as conexões de acordo com cherokee ao mesmo tempo, não é nem um pico ...

Eu tentei o ondemand dinâmico e fixo e nada muda. não importa o que max_children eu definir, eventualmente morre.

Por que não posso me recuperar? Eu não sei, mas estou chegando ao ponto agora de mudar para outra coisa ou fazer um crontab que reinicie o FPM a cada 30 minutos

servidor

  • rackspace 1ª geração 1024 MB de RAM, 40 GB de disco
  • Ubuntu 12.04 LTS
  • cherokee 1.2.103

PHP 5.3.10-1ubuntu3.11 com Suhosin-Patch (cli) (construído: 4 Apr 2014 01:30:04) Direitos Autorais (c) 1997-2012 O Grupo PHP Zend Engine v2.3.0, direitos autorais (c) 1998-2012 Zend Technologies

O site recebe cerca de 2 mil visualizações de página, por isso não é uma carga tão grande.

O uso da memória está em torno de 300 - > 400mb, o swap está vazio, a média de carregamento é de < ~ 1,5

config fpm

[global]
pid = /var/run/php5-fpm.pid
error_log = /var/log/php5-fpm.log
emergency_restart_threshold = 5
emergency_restart_interval = 1s
process.max = 75


include=/etc/php5/fpm/pool.d/*.conf

configuração do pool

[www]
user = www-data
group = www-data
listen = 127.0.0.1:9000

pm = ondemand
pm.max_children = 50
pm.start_servers = 3
pm.min_spare_servers = 2
pm.max_spare_servers = 6
pm.process_idle_timeout = 10s

pm.max_requests = 100
pm.status_path = /status

ping.path = /fpm/ping

chdir = /
    
por dogmatic69 15.09.2014 / 23:42

2 respostas

2

Aumentar o número de servidores, alterar sua configuração ou seu código não ajudará em uma falha de segmentação. Mesmo em 2014, o 5.3.10 foi longo no dente e devido a um upgrade. Você pode analisar os core dumps com o gdb, mas ninguém estará muito interessado em consertar um bug em uma versão antiga do php: upgrade.

    
por 05.09.2017 / 13:03
1

Gostaria de saber se você está com o seguinte bug

link

Pode tentar uma atualização do php

    
por 16.09.2014 / 00:11

Tags