JMeter负载测试时使用GUI界面和较多的收集测试结果的监听器容易形成jmeter的性能瓶颈,远程测试时的控制台尤其明显。提高JMeter负载测试时性能的方法以下:html
官方的解决办法:
http://jakarta.apache.org/jmeter/usermanual/best-practices.html#lean_meanapache
1. 使用无界面模式:jmeter -n -t test.jmx -l test.jtl并发
2. 尽量少使用监听器,若是使用了能够在运行时使用-l参数函数
3. 尽可能把类似的取样器放在循环内,使用变量(CSV Data Set)修改这些Sampler,而不是重复添加Sampler。或者可能会用到Access Log Sampler(在这里不能使用Include Controller,由于它会将指定文件中的全部测试元件直接添加到测试计划中来)。性能
4. 不要使用函数测试模式(Functional Mode)测试
5. 以CSV格式输出测试结果,尽可能不要使用XML格式调试
6. 仅保存你须要的数据htm
7. 尽量少的使用断言资源
8.负载测试期间不要使用“查看结果树”“用表格查看结果”监听器,这两个监听器最好只在调试脚本时使用io
9.若是测试须要大量数据(特别是随机产生的数据),能够提早准备好测试数据放到数据文件中,以CSV Dataset方式读取,这样就能避免在测试运行阶段浪费资源
10.大并发量的负载测试,在尽可能多台机器上运行多个非GUI JMeter实例