作压力测试时经常会发现相同的环境,但是每次能承受的压力很不一样,而导致这种现象的问题基本就几种,所以下面总结一下。 可能影响压力测试的因素: 1、 压力脚本的正确性:这是基础,如果脚本不正确,那打出来的压力也没有意义; 2、 磁盘满:web服务器、应用服务器、数据库等压力都很低,但是响应时间很长,压力打不上去。一般df –h一下就知道了。主要的可能是apache、resin或者应用的日志打满了。在这个问题上吃了好几次亏。 3、 磁盘io过高(mysql,sohudb):一般是mysql和sohudb,如果是mysql则说明频繁读写硬盘,应该调整缓存设置,具体的调整方式网上搜一下即可。查看命令是iostat –xk 3,而查看mysql缓存状态的命令式mysqladmin extended-status; 4、 机器load过高:跟磁盘io过高有一定关系,也可能因为压力实在太大了; 5、 网络繁忙或者出现问题:这是压力曲线会上线波动很大,只遇到过一次。可以通过与直接操作mysql或者sohudb的平均时间比较,如果连接数据源都很慢,那说明网络一定有问题; 6、 内存不足(少见):如果遇到了应该就是内存泄露了,可以通过jmap &jhat来检查; 7、 Cpu过高(少见):一般情况下是死锁导致,比如多线程操作hashMap没有做同步处理,可以通过jstack或者kill -3 <pid>来检查; Jdk工具参考: http://liudaoru.iteye.com/blog/540772 http://liudaoru.iteye.com/blog/464598 http://liudaoru.iteye.com/blog/403632 </pid>
压力测试的注意事项
最新推荐文章于 2022-05-22 14:35:55 发布