nginx recv () falhou (104: Conexão redefinida por peer) durante a leitura do cabeçalho de resposta do upstream

6

Atualizei recentemente o meu magento de 1.5 para 1.9 e, sempre que adiciono um determinado produto ao cesto, comecei a receber este erro: 502 Bad Gateway

Não havia entradas de log na pasta var / log / :

Então,eudeiumaolhadanosmeuserrosdonginxeencontreiasseguintesentradasemnginx-errors.log:

2015/04/0910:58:03[error]15208#0:*3recv()failed(104:Connectionresetbypeer)whilereadingresponseheaderfromupstream,client:46.xxx.xxx.xxx,server:dev.my-domain.co.uk,request:"POST /checkout/cart/add/uenc/aHR0cDovL2Rldi5zYWx2ZW8uY28udWsvdGludGktYmF0aC1wYWludGluZy1zb2FwLTcwbWwuaHRtbD9fX19TSUQ9VQ,,/product/15066/form_key/eYLc3lQ35BSrk6Pa/ HTTP/1.1", upstream: "fastcgi://unix:/var/run/php-fcgi-www-data.sock:", host: "dev.my-domain.co.uk", referrer: "http://dev.my-domain.co.uk/tinti-bath-painting-soap-70ml.html"
2015/04/09 11:04:42 [error] 15208#0: *13 recv() failed (104: Connection reset by peer) while reading response header from upstream, client: 46.xxx.xxx.xxx, server: dev.my-domain.co.uk, request: "POST /checkout/cart/add/uenc/aHR0cDovL2Rldi5zYWx2ZW8uY28udWsvdGludGktYmF0aC1wYWludGluZy1zb2FwLTcwbWwuaHRtbD9fX19TSUQ9VQ,,/product/15066/form_key/eYLc3lQ35BSrk6Pa/ HTTP/1.1", upstream: "fastcgi://unix:/var/run/php-fcgi-www-data.sock:", host: "dev.my-domain.co.uk", referrer: "http://dev.my-domain.co.uk/tinti-bath-painting-soap-70ml.html"
2015/04/09 11:05:03 [error] 15208#0: *16 recv() failed (104: Connection reset by peer) while reading response header from upstream, client: 46.xxx.xxx.xxx, server: dev.my-domain.co.uk, request: "POST /checkout/cart/add/uenc/aHR0cDovL2Rldi5zYWx2ZW8uY28udWsvdGludGktYmF0aC1wYWludGluZy1zb2FwLTcwbWwuaHRtbD9fX19TSUQ9VQ,,/product/15066/form_key/eYLc3lQ35BSrk6Pa/ HTTP/1.1", upstream: "fastcgi://unix:/var/run/php-fcgi-www-data.sock:", host: "dev.my-domain.co.uk", referrer: "http://dev.my-domain.co.uk/tinti-bath-painting-soap-70ml.html"
2015/04/09 11:12:07 [error] 15273#0: *1 recv() failed (104: Connection reset by peer) while reading response header from upstream, client: 46.xxx.xxx.xxx, server: dev.my-domain.co.uk, request: "POST /checkout/cart/add/uenc/aHR0cDovL2Rldi5zYWx2ZW8uY28udWsvdGludGktYmF0aC1wYWludGluZy1zb2FwLTcwbWwuaHRtbD9fX19TSUQ9VQ,,/product/15066/form_key/eYLc3lQ35BSrk6Pa/ HTTP/1.1", upstream: "fastcgi://unix:/var/run/php-fcgi-www-data.sock:", host: "dev.my-domain.co.uk", referrer: "http://dev.my-domain.co.uk/tinti-bath-painting-soap-70ml.html"

Eu instalei o magento em uma pilha LEMP personalizada, aqui estão as configurações:

Este erro só parece estar acontecendo quando eu adiciono um produto específico ao carrinho no meu magento atualizado e cada vez que o erro ocorre, eu posso ver um arquivo core.XXXXX (que é de aproximadamente 350mb) na pasta public_html .

Alguma idéia do porque meu php-fpm está falhando assim? Como posso encontrar a causa e corrigi-lo?

Aqui estão as últimas entradas no meu servidor Linux (CentOS), quando executo o comando dmesg :

php-fpm[14862]: segfault at 7fff38236ff8 ip 00000000005c02ba sp 00007fff38237000 error 6 in php-fpm[400000+325000]
php-fpm[15022]: segfault at 7fff38351ff0 ip 00000000005bf6e5 sp 00007fff38351fb0 error 6 in php-fpm[400000+325000]
php-fpm[15021]: segfault at 7fff38351ff0 ip 00000000005bf6e5 sp 00007fff38351fb0 error 6 in php-fpm[400000+325000]
php-fpm[15156]: segfault at 7fff38351ff0 ip 00000000005bf6e5 sp 00007fff38351fb0 error 6 in php-fpm[400000+325000]
php-fpm[15024]: segfault at 7fff38351ff0 ip 00000000005bf6e5 sp 00007fff38351fb0 error 6 in php-fpm[400000+325000]
php-fpm[15223]: segfault at 7fff8d1d5fd8 ip 00000000005c02ba sp 00007fff8d1d5fe0 error 6 in php-fpm[400000+325000]
php-fpm[15222]: segfault at 7fff8d1d5fd8 ip 00000000005c02ba sp 00007fff8d1d5fe0 error 6 in php-fpm[400000+325000]
php-fpm[15225]: segfault at 7fff8d1d5fd8 ip 00000000005c02ba sp 00007fff8d1d5fe0 error 6 in php-fpm[400000+325000]
php-fpm[15227]: segfault at 7fff8d1d5fd8 ip 00000000005c02ba sp 00007fff8d1d5fe0 error 6 in php-fpm[400000+325000]
php-fpm[15362]: segfault at 7fff3118afd0 ip 00000000005c0ace sp 00007fff3118afa0 error 6 in php-fpm[400000+325000]

Eu analisei o dump principal com o gdb e é isso que eu vejo nos dois primeiros quadros: link ( não faz muito sentido para mim) ...

    
por Latheesan 09.04.2015 / 18:18

1 resposta

0

Tais erros geralmente ocorrem quando o servidor está ficando sem recursos, supondo que você esteja executando as versões estáveis mais recentes do 'php5-fpm:

  1. Verifique se php5-fpm tem memória suficiente (não há oom-killer matando o processo)
  2. Há espaço suficiente no disco
  3. Certifique-se de verificar os limites de arquivos abertos no servidor. Você está interessado principalmente no limite rígido ( -Hn ):

    $ ulimit -Hn
    4096
    $ ulimit -Sn
    1024
    

    Verifique o número de descritores de arquivos abertos no servidor:

    sysctl fs.file-nr
    fs.file-nr = 1440       0       790328
    

    Os servidores modernos são capazes de lidar com muitos arquivos, geralmente ulimits estão configurados com valores baixos desnecessários.

    Em seguida, verifique nginx.conf , no começo há algo como:

    worker_processes 4;
    events {
      worker_connections 1024;
    }
    

    Se você estiver solicitando proxy para cada conexão, precisará de duas alças de arquivo. O que significa que, no caso de muitas conexões, você alcançaria o limite rapidamente.

    O nginx tem uma diretiva worker_rlimit_nofile para restringir arquivos abertos por processo de trabalho (diretiva de nível superior, como worker_processes 4; ):

    worker_rlimit_nofile    1024;
    

    Basta fazer as contas e calcular quantos descritores de arquivos abertos você precisaria quando todas as conexões fossem usadas (um caso extremo). Considere também todos os outros serviços em execução nesse servidor. Quando

por 17.05.2017 / 11:37