这个问题我也遇到过,然后网上搜到了这篇文章!

先说下问题

我在做性能测试时,使用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使用者千万注意咯!

原文链接:http://blog.csdn.net/lzqinfen/article/details/46820673

jmeter 兼容bug 记录一笔的更多相关文章

  1. ie6,ie7,ie8 css bug兼容解决记录

    ie6,ie7,ie8 css bug兼容解决记录 转载自:ie6,ie7,ie8 css bug兼容解决记录 - 前端开发 断断续续的在开发过程中收集了好多的bug以及其解决的办法,都在这个文章里面 ...

  2. 微信小程序bug记录与解决

    微信小程序bug记录 textarea textarea在模拟器上没有padding,可是在真机上会自带padding,而且在外部改不了,并且在安卓和IOS上padding还不一样 第一张图是在开发工 ...

  3. PHP扩展迁移为兼容PHP7记录

    PHP7扩展编写的时候,提供的一些内核方法和之前的PHP之前的版本并不能完全兼容.有不少方法参数做了调整.下面是在迁移过程中遇到的一些问题.记录下来,避免大家再踩坑. PHP7扩展开发之hello w ...

  4. 【bug记录】OS Lab3 踩坑记

    OS Lab3 踩坑记 Lab3在之前Lab2的基础上,增加了进程建立.调度和中断异常处理.其中测试包括进程建立以及进程调度部分. 由于是第一次做bug记录,而且是调试完bug后再做的记录,所以导致记 ...

  5. BUG 记录:移位运算与扩展欧几里得算法

    BUG 记录:移位运算与扩展欧几里得算法 起因 上个月就开始打算用C++写一个ECC的轮子(为什么?折磨自己呗!),奈何自己水平有点差,拖到现在才算写完底层的大数运算.在实现欧几里得算法的时候,我开始 ...

  6. jmeter本身的一个bug记录

    1.使用jmeter测http接口 2.断言接口返回的内容是否包含某串文本 3.结果:总是返回断言失败,即使接口返回的内容包含了该文本 接口返回的值为: {"code":" ...

  7. 记一次事件委托在 ios 下的兼容 bug

    项目中碰到的兼容类 bug,记录一二. 页面上有几个同类型的控件,点击它们会触发一些事件,很显然,事件委托优于批量绑定.为了图方便,我将 click 事件绑定到了 document.body 上(绑定 ...

  8. bug记录-setTimeout、setInterval之IOS7

    本篇文章主要讲查找并分析bug的思路,相关的函数不是本文的重点. 众所周知,setTimeout和setInterval是用来做延迟调用以及周期性调用的方法,他们支持的参数都差不多. setTimeo ...

  9. ArcGIS 10.1 BUG记录

    声明:笔者使用ARCGIS 10.1 XXX版,YYY版可能没有此处描写的问题 1. 关于注册数据库 发布启用FA的服务,需要为数据库进行ArcGIS Server注册,若通过ArcMap执行注册,会 ...

随机推荐

  1. Flex 网络图

    这个是最简单的网络拓扑图开发,我已经帮你把所有拓扑元素封装好,然后直接添加就会具有相关的特性.并且的底层元素也开源,也方便大家oem修改.只需10分钟就可以建设一个完善的拓扑图. 首先下载工程或者SW ...

  2. 最简单的rman操作

    连接: [root@oracle000 ‾]# su - oracle [oracle@oracle000 ‾]$ rman target / lines) Recovery Manager: Rel ...

  3. day9 匿名函数 lambda

    1. list列表排序 #### sort排序 nums = [,,,,,] nums.sort() print(nums) ### 结果 [, , , , , ] ######## 逆序 In [] ...

  4. cdh中hdfs非ha环境迁移Namenode与secondaryNamenode,从uc机器到阿里;

    1.停掉外部接入服务: 2 NameNode Metadata备份: 2.1 备份fsimage数据,(该操作适用HA和非HA的NameNode),使用如下命令进行备份: [root@cdh01 df ...

  5. Keepalived两节点出现双VIP的情况

    一.现象 安装有keepalived的两节点服务器10.11.4.186/187,主要做高可用,设定VIP10.11.4.185. 首先启动10.11.4.186的keepalived服务,服务启动正 ...

  6. kubernetes nfs-client-provisioner外部存储控制器

    介绍: nfs-client-provisione是一个专门用于NFS外部目录挂载的控制器,当多个副本创建时,他们的命名方式如下: pv provisioned as ${namespace}-${p ...

  7. Could not resolve placeholder 'jdbc.url' in value "${jdbc.url}"

    写完接口之后,发现报了这个错误,查了一下发现,spring不允许使用两个 <context:property-placeholder>

  8. Professional Books

    Machine Learning:     Pattern Recognition and Machine Learning(PRML)    https://mqshen.gitbooks.io/p ...

  9. Wacom发布Cintiq Companion 2

    全新的Cintiq Companion 2是一款强大的平板电脑,让创意专业人士获得最佳的屏幕笔触,让创意随时随地进行.用户还可以在家中或工作时连接到Mac或PC电脑获得无与伦比的灵活性! 2015年1 ...

  10. redis rdb aof比较

    Redis中数据存储模式有2种:cache-only,persistence; cache-only即只做为“缓存”服务,不持久数据,数据在服务终止后将消失,此模式下也将不存在“数据恢复”的手段,是一 ...