上周六游戏进不去,自己用工具测试时,提示 502 bad gateway 错误,一时不知道怎么整,竟然把服务器重启了,等老板的验证码,折腾了大半天,其实不用这样,直接生启php5-fpm,与nginx 就可以
/etc/init.d/php5-fpm restart
service nginx restart
如果重启失败
如果提示fail
sudo nginx -t 查看原因
调高调高linux内核打开文件数量
可以使用这些命令(必须是root帐号)
echo 'ulimit -HSn 65536' >> /etc/profile
echo 'ulimit -HSn 65536' >> /etc/rc.local
source /etc/profile
脚本执行时间超时
如果脚本因为某种原因长时间等待不返回 ,导致新来的请求不能得到处理,可以适当调小如下配置。
fastcgi_connect_timeout 300;
fastcgi_send_timeout 300;
fastcgi_read_timeout 300;
php-fpm.conf里如要是如下
request_terminate_timeout = 10s
增加php5-fpm 进程数
pm = dynamic
pm.max_children = 64
pm.start_servers = 32
pm.min_spare_servers = 16
pm.max_spare_servers = 32
pm.max_requests = 5000
pm =
dynamic
如何控制子进程,选项有
static
和
dynamic
pm.max_children:静态方式下开启的php-fpm进程数量pm.max_requests:php-fpm子进程能处理的最大请求数pm.start_servers:动态方式下的起始php-fpm进程数量pm.min_spare_servers:动态方式下的最小php-fpm进程数pm.max_spare_servers:动态方式下的最大php-fpm进程数量
区别:
如果dm设置为 static,那么其实只有pm.max_children这个参数生效。系统会开启设置数量的php-fpm进程。
如果dm设置为 dynamic,那么pm.max_children参数失效,后面3个参数生效。
系统会在php-fpm运行开始 的时候启动
pm.start_servers个
php-fpm进程,
然后根据系统的需求动态在
pm.min_spare_servers
和
pm.max_spare_servers
之间调整php-fpm进程数。