nginx php-fpm unixsocket同時100以上報告502解決方法


nginx php-fpmはunix socket方式で、同時100以上に達すると502が間違って報告され、tcp方式に変更されても問題ありません
もともとunix socketを使うのは性能を高めるためで、大きい同時性を支持しないで、調べたところシステムのカーネルの制限が不安定なことを招くので、以下のカーネルのパラメータを修正して解決します
以下のパラメータsysctlを調整する.conf
net.unix.max_dgram_qlen = 4096
net.core.netdev_max_backlog = 4096
net.core.somaxconn = 4096

php-fpm.conf
listen.backlog = 4096

参照先:http://forum.nginx.org/read.php?11,215606,215606#msg-215606