http://php.net/manual/zh/install.fpm.configuration.php 官方文档
线上机器默认的pm.max_children = 50 达到了上限,导致服务器504,
先重启php-fpm恢复线上服务,systemctl restart php-fpm
然后查看日志,
tail -f /var/log/php-fpm/error.log
cd /etc/php-fpm.d/ 下的 www.conf 修改配置
目前遇到的问题是pm.max_children 默认是50 超出了,设置成了200,以后观察
查看php-fpm的进程数 pstree | grep php-fpm 或者 ps aux | grep -c php-fpm
有个问题是 当max_children 的值小于 pm.max_spare_servers 的时候重启会报错。设置了180
随后设置了pm.start_servers 和pm.min_spare_servers为32
重启无报错
Min设置为35的意思是当服务器比较空闲的时候,那些进程会一个个的被关闭。但是最少保存35个。
min弄高一点。好像是因为如果你突然之间很大的请求量。每一次请求都要开一个进程,那么刚开始这些请求会很慢。