首页 » LNMP »

对网站进行在线压力测试、在线负载测试后进行VPS优化的思路

如果有洁癖,不想在服务器上安装工具进行压力测试、负载测试,可以使用在线测试工具,国内的例如y.webkaka.com,国外的自己百度搜,很多

测试环境:centos5.6 64bit lnmp1.2 WordPress4.2
症状:WordPress网站并发低,点击链接总是在等待响应,“网站反应速度慢”
可以明显看见的是,数据库查询次数85,出现以上症状的时候首页页面执行时间正常情况500ms
使用webkaka的在线压力测试,一定并发下上升至2s+,然后完全无法响应

第一反应:mysql查询过多或者效率不高导致
mysql开启慢查询(教程及方法我博客里有相关文章)
修改mysql配置my.cnf
调整cache、buffer相关参数后测试,性能提升有限,phpmyadmin后台的监控里看到50个并发下查询次数为1.5k以上,但是mysql并未锁死
分析慢查询日志(极力推荐使用percona-toolkit工具,教程我博客里有)
大部分查询都是ms级别的,最大的一个查询耗时2s
找到慢查询日志中记录的sql语句,测试后发现并不是该问题导致以上症状

仔细想了一下,忽略一个基本问题,cpu负载使用率高,负载高。。会不会是程序本身导致
使用webkaka 50个并发测试,然后立马ssh上vps,top查看进程,发现是几个php-fpm进程将cpu消耗殆尽,果然。。。

第一反应,会不会是php-fpm开启太少呢?
但是才50个并发不至于吧,但是又不确认,于是修改php-fpm的配置文件/usr/local/php/etc/php-fpm.conf,将max_children值调大后重启php-fpm,再次测试
vps top命令查看进程php-fpm将cpu消耗殆尽
发现虽然php-fpm线程多了,每个php-fpm进程消耗的cpu降低了,但是各个php-fpm线程相加以后还是讲cpu消耗殆尽,而内存消耗正常

看来问题不是mx_children,再多的意思是不是php-fpm处理不过来,是你的cpu不够强,资源不够怎么办呢?升级vps配置。。。单核变多核,但这不是根本解决的解决方法,还得从php程序上找问题
于是进入WordPress后台,关闭依次关闭插件并测试,最后发现只要将wp-touch插件关闭后并发性能直线上升。。。。

本文标签:

相关文章推荐

转载请保留,转载自:老牛博客
原文地址 http://xiaohost.com/1254.html

发表评论