性能测试JMeter趟的坑之JMeter的bug:TPS周期性波动问题

原创 2015年07月09日 19:27:08

先说下问题

我在做性能测试时,使用JMeter搞了100个并发,以100TPS的压力压测十分钟,但压力一直出现波动,而且出现波动时JMeter十分卡,如下图:

周期性TPS波动



各种推测:

所以开始找环境的各种原因,起初以为是JMeter的连接被“劫持”了,不然JMeter也不会卡的。所以,花了整整一下午时间,去排除压测机环境、被压测环境(TCP连接数、程序上的问题等等),但一直没找到原因。后来,换成LR后,压测正常。所以开始怀疑是JMeter自身的问题。


原因找到

后来想起来,我被测场景的脚本是老的脚本,也是在JMeter2.8上的,然后我现在用的JMeter是2.13,难道是脚本的兼容性问题?



问题解决

各种替换,最后才定位到了是CSV Data Set Config的问题,只要我用2.8的脚本上的CSV Data Set Config进行参数化,哪怕是这个参数我没有用,一压测就出现TPS波动;我禁用后,新建了一个CSV Data Set Config,所有数据保持不变,再次压测,OK! 这个坑真大!希望Apache组织能够修改下,肯定是老版本的CSV Data Set Config在新版本的JMeter压测时,调度存在问题,导致本地的压力不稳定,而且关键的是,这个导致JMeter太卡了。问题解决后的压力如下:稳稳的,我要稳稳的幸福~

下图很稳定了,波动在3TPS范围




还有其他坑

PS:另外,再给大家补充个坑,就是JMeter插件的资源监控问题,将agent放到Linux上去监控资源,cpu和内存都没什么问题,但如果你监控tcp的连接话,就要注意了,这个监控可以吃掉15%左右cpu资源,4核单板的喔,而且是sys的cpu高很多。应该是这块监控的算法不够优化,占用了太多的资源。请各位JMeter使用者千万注意咯!


By:Fresh.Qin  



让你的 JMeter 像 LoadRunner 那样实时查看每秒事务数(TPS)、事务响应时间(TRT)

熟悉 LoadRunner 的朋友一定不会对其 TPS(每秒事务数)、TRT(事务响应时间) 等视图感到陌生,因为这是压力测试最为关键的两个指标。JMeter 以其开源、灵活、扩展性高等特性赢得了广大...
  • defonds
  • defonds
  • 2017年01月16日 18:59
  • 17270

jmeter实践

本文主要介绍性能测试中的常用工具jmeter的使用方式,以方便开发人员在自测过程中就能自己动手对系统进行自动压测和模拟用户操作访问请求。最后还用linux下的压测工具ab做了简单对比。 1.    ...
  • UltraNi
  • UltraNi
  • 2012年12月17日 23:45
  • 57694

[干货]系统吞吐量(TPS)、用户并发量、性能测试概念和公式

在淘宝环境下,假设我们压力测试出的TPS为100,那么这个系统的日吞吐量=100*11*3600=396万 这个是在简单(单一url)的情况下,有些页面,一个页面有多个request...
  • sunwangdian
  • sunwangdian
  • 2016年02月16日 15:43
  • 3809

JMeter使用记录3 -- 性能监控插件jmeter-plugins

JMeter使用记录3 -- 性能监控插件jmeter-plugins
  • cloud_ll
  • cloud_ll
  • 2014年08月05日 13:17
  • 10002

JMeter每秒事务数TPS插件

  • 2017年01月16日 19:05
  • 912KB
  • 下载

Jmeter的几个测试重要指标

Aggregate Report 是 JMeter 常用的一个 Listener,中文被翻译为“聚合报告”。今天再次有同行问到这个报告中的各项数据表示什么意思,顺便在这里公布一下,以备大家查阅。 ...
  • lll921176681
  • lll921176681
  • 2017年05月07日 22:25
  • 1204

jmeter监控TPS和响应时间第三方插件

  • 2017年12月03日 16:09
  • 904KB
  • 下载

JMeter每秒事务数TPS插件

  • 2017年11月15日 22:48
  • 918KB
  • 下载

jmeter发送请求时,加入了Timer后,无法达到后台饱和的TPS

后台:  后台tomcat最大线程数100,处理请求时间100ms。 Jmeter:Sampler-Http请求-Implementation为默认的HTTPClient4。 现象: 1...
  • yixiayizi
  • yixiayizi
  • 2012年11月07日 09:56
  • 2864

Jmeter进行稳定性测试

首先,创建你要进行稳定性测试的脚本 我创建的脚本树如下: 2.场景设置 LOGIN使用事务循环控制器 线程组设置并发用户数200 在启动1s,200并发用户全部启动 循环设置为永远 采用调度器:有两...
  • henni_719
  • henni_719
  • 2016年06月22日 11:26
  • 1894
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:性能测试JMeter趟的坑之JMeter的bug:TPS周期性波动问题
举报原因:
原因补充:

(最多只允许输入30个字)