terça-feira, 22 de janeiro de 2013

Nginx PHP-FPM unix socket jeito certo

Buscando melhorar um pouco mais o desempenho do Nginx e PHP-FPM, depois de tanto procurar, segue o passo a passo como mudar a configuração da conexão do modulo FastCGI, de TCP/IP socket para unix socket, esta configuração é recomendada para se obter mais desempenho segundo o site Nginx. Tem um benchmark desta configuração neste site i.amniels.com.

Na configuração padrão (Nginx + PHP-FPM) do arquivo /etc/nginx/nginx.conf temos:
fastcgi_pass   127.0.0.1:9000;

Para que funcione com unix socket altere para:
fastcgi_pass   unix:/var/run/php5-fpm.sock;


Mas não é só isso, edite o arquivo de configuração do PHP-FPM, no meu caso /etc/php5/fpm/pool.d/www.conf

Temos a linha com o seguinte conteúdo:
listen = 127.0.0.1:9000

Altere para:
listen = /var/run/php5-fpm.sock

Para finalizar reinicie os serviços nginx e php5-fpm.

Fontes:
i.amniels.com
wiki.nginx.org
askubuntu.com
ferrari.eti.br