O uso do fastcgi_keep_conn no nginx aumenta o desempenho do php-fpm?

2

Os docs do nginx dizem que o keepalive para fastcgi não funciona se o fastcgi_keep_conn não estiver ativado. No entanto, não consigo encontrar mais detalhes sobre isso. Eu já tenho o keepalive habilitado em todo o servidor. Eu estou usando o php-fpm. Existe algum problema em usar o fastcgi_keep_conn que eu deveria estar ciente?

    
por Ryan M 13.07.2014 / 15:57

2 respostas

3

Teoricamente fastcgi_keep_conn aumenta o desempenho, pois o soquete entre nginx e PHP-FPM permanece aberto após o processamento da solicitação. Portanto, o tempo gasto para abrir o soquete é salvo.

No geral, isso economizaria alguns milissegundos em cada solicitação, por isso não tem um efeito tão grande.

A documentação simplesmente significa que você precisa ter ambas as opções upstream block com keepalive e fastcgi_keep_conn em seu bloco de script PHP para que a conexão keepalive funcione.

Basicamente, a opção fastcgi_keep_conn diz ao nginx para fazer o PHP-FPM manter a conexão aberta após o pedido, e a keepalive diz ao nginx para manter a conexão aberta.

    
por 13.07.2014 / 17:08
1

Você pode encontrar esse problema: link

Basicamente, você pode obter um dos seguintes erros toda vez que um processo filho do php-fpm for reiniciado devido a pm.max_requests ser atingido enquanto o nginx ainda estiver conectado a ele:

readv() failed (104: Connection reset by peer) while reading upstream and recv() failed (104: Connection reset by peer) while reading response header from upstream

    
por 21.07.2018 / 17:55