最近一直在看nginx+php-fpm这个的优化,但是一直没有找到好的解决方法。
我根据阿里云官方提供的链接,在测试中,看一下很网友的解决方法,但是我并没有这样解决问题,一切都还在测试中。
Nginx+php-fpm 刚配置好时运行正常,但运行一段时间后,他就说网站打开很慢,打开网站后,在输入框输入要访问的网站,也慢得不行。
把服务器重启后,就会快起来,后来发现,用
/usr/local/php/sbin/php-fpm restart
把fastcgi重启下也会快起来。
查看了nginx.log和php-fpm.log,根据里面的错误,找了以上转载的几篇文章,总算是把问题解决了,主要修改了两个地方
1、
问题:
发现/usr/local/webserver/php/etc/php-fpm.conf文件里定义的打开文件描述符的限制数量是
51200
但用 命令ulimit -n查看,发现只有1024
我已在/etc/rc.local里添加了
ulimit -SHn 51200
竟然没生效
解决:
vi /etc/security/limits.conf
文件最后加上
* soft nofile 51200
* hard nofile 51200
2、
问题:
用命令
netstat -np | grep 127.0.0.1:9000 |wc -l
发现只有100多
解决:
根据服务器内存情况,可以把PHP FastCGI子进程数调到100或以上,在4G内存的服务器上200就可以
服务器上内存为8G,我把PHP FastCGI子进程数调整到300
vi /usr/local/webserver/php/etc/php-fpm.conf
将max_children修改为300
300
重启服务器,这样,网站打开速度快,而且稳定了。
以上为网友的解决方法,我再说一下我的实际情况:
主机:阿里云
配置:A经济型
内存并没有上面说的那么大,只有512M
于是我将max_children改成的32.
测试中...