php-fpm并发优化

(将新浪qing的博客还是转移到CSDN吧!)

服务器lnmp环境安装好后,没有进行配置优化,就采用的默认配置。最近开始推广,突然就遇到性能问题了。

主要症状是:
1.有时第一次连接的时候很慢,连接上后就很快。
2.采用QQ登录,会变得很慢。然后其它人访问也会变得很慢。


初步分析原因是:
首先排除CPU和内存瓶颈的问题:
1.默认配置,只启动了两个php-fpm进程。
2.每次采用QQ登录时,之前的代码是采用的file_get_content方式去调用QQ的API,经常QQ那边会响应很慢,这样就导致php-fpm进程一直在等待file_get_content。所以极端情况有两个用户使用QQ登录,可能会造成仅有的两个php-fpm进程耗着。就没法接受新的用户请求。所以突然会很慢。


优化:
1.修改代码,采用curl方式,并且设置连接的超时时间。
2.优化php-fpm.conf的配置
主要是调整pm.max_children,pm.start_servers,pm.min_spare_servers,pm.max_spare_servers参数。
基本上就可以初步解决上面的问题了。以后遇到问题再继续做优化。


补充:
1.显示进程内存占用率并进行排序
ps auxw --sort=rss 或者
ps aux | sort -k6,6n
2.查看内用使用率
free -m 或者free -g
有时由于内存缓存,会显示内存占用率很高,但是ps后看到没有那个进程的内存占用很高,此时可以先清除内存缓存。
清除内存缓存:
echo 1 > /proc/sys/vm/drop_caches


参考资料:
http://www.s135.com/file_get_contents
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值