https://blog.csdn.net/lzqinfen/article/details/46820673

tps抖动厉害的原因?
突然增加成倍的用户,如果性能表现良好,TPS应该成倍增加,响应时间不变;如果性能表现一般,TPS增加一些,响应时间增加一些;如果性能表现不好,则TPS没啥变化,响应时间增加,而且可能出现抖动现象,因为用户太多,处理不过来。是正常现象
1:观察资源抖不抖动,是否资源的抖动导致TPS抖动
2:FULL GC太过频繁,查看JVM参数配置
3:pacing设置过大
4、java编写的测试脚本,负载机JVM堆内存太小

先说下问题:

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

jmeter之性能测试TPS解析:https://blog.csdn.net/u011197146/article/details/83273879

tps抖动的更多相关文章

  1. 性能测试遭遇TPS抖动问题

    目前性能测试组正在对独立秒杀进行性能压测,性能抖动特别厉害. 由于独立秒杀的接口大多数是经过volicity渲染过的页面和数据的整合,所以在压测的时候有很多volicity的错误.初步判定,感觉是vo ...

  2. MySQL 5.7和8.0性能测试

    目录 背景 前提 环境 测试 双1模式下 0 2 模式下 结论 背景 测试mysql5.7和mysql8.0 分别在读写.只读.只写模式下不同并发时的性能(tps,qps) 前提 测试使用版本为mys ...

  3. 【MySQL】为什么不要问我DB极限QPS/TPS

    为什么不要问我DB极限QPS/TPS 背景 相信很多开发都会有这个疑问,DB到底可以支撑多大的业务量,如何去评估?对于这个很专业的问题,DBA也没有办法直接告诉你,更多的都是靠经验提供一个看似靠谱的结 ...

  4. 万级TPS亿级流水-中台账户系统架构设计

    万级TPS亿级流水-中台账户系统架构设计 标签:高并发 万级TPS 亿级流水 账户系统 背景 业务模型 应用层设计 数据层设计 日切对账 背景 我们需要给所有前台业务提供统一的账户系统,用来支撑所有前 ...

  5. QPS 与 TPS 简介

    QPS:Queries Per Second意思是"每秒查询率",是一台服务器每秒能够相应的查询次数,是对一个特定的查询服务器在规定时间内所处理流量多少的衡量标准. TPS是Tra ...

  6. javascript运动系列第四篇——抖动

    × 目录 [1]原理介绍 [2]代码实现 [3]实例应用 前面的话 在运动系列中,前面分别介绍了匀速运动.变速运动和曲线运动.下面介绍一种特殊的运动形式——抖动 原理介绍 抖动其实是往复运动的一种特殊 ...

  7. (转)解决bootstrap 模态框的页面抖动

    使用bootstrap时,往往会出现页面抖动的效果,使得用户体验十分不友好. Bootstrap为了让所有的页面(这里指内容溢出和不溢出)显示效果一样,采取的方法如下: 当Modal显示时,设置bod ...

  8. 系统吞吐量(TPS)、用户并发量

    PS:下面是性能测试的主要概念和计算公式,记录下: 一.系统吞度量要素: 一个系统的吞度量(承压能力)与request对CPU的消耗.外部接口.IO等等紧密关联. 单个reqeust 对CPU消耗越高 ...

  9. C#_技巧:窗口抖动

    原理 * 窗口抖动:即每隔一段很小的时间,窗口位置发生变化  * 时间控制:利用for循环||利用timer * 窗口位置发生变化:控件Left/Top属性或Location属性, 注:Left/To ...

随机推荐

  1. MySQL存储引擎知多少

    MySQL是我们经常使用的数据库处理系统(DBMS),不知小伙伴们有没有注意过其中的“存储引擎”(storage_engine)呢?有时候面试题中也会问道MySQL几种常用的存储引擎的区别.这次就简短 ...

  2. whistle 前端工具之抓包利器

    一.业务场景 前端本地开发的场景中,我们需要频繁的改动代码,并需要实时看到效果,并且在一些开发场景中,我们需要将特定的请求代理到特定的IP.本地文件等,所以使用fiddler或whistle等本地.真 ...

  3. re:正则表达式,字符串处理的杀手锏

    介绍 正则表达式是一种用形式化语法描述的文本匹配模式,可以进行复杂的字符串匹配. Python中的正则表达式通过re模块提供,功能比Python内置的str更强,但是速度没有str提供的方法快. 因此 ...

  4. linux主机之间的SSH链接

    一.什么是SSH连接 SSH为Secyre Shell的缩写,SSH 为建立在应用层基础上的安全协议.SSH 是目前较可靠,专为远程登录会话和其他网络服务提供安全性的协议.且SSH连接可以通过多种平台 ...

  5. Python基础:元组

    元组(tuple)特点: 1.元组是以圆括号“()”包围的数据集合,不同成员以“,”分隔.通过下标进行访问 2.不可变序列,可以看做不可变的列表,与列表不同:元组中数据一旦确立就不能改变(所以没有类似 ...

  6. 【bzoj 4046 加强版】Pork barrel

    刚考完以为是神仙题--后来发现好像挺蠢的-- QwQ 题意 给你一张 \(n\) 个点 \(m\) 条边的无向图(不一定连通),有 \(q\) 组询问,每组询问给你 \(2\) 个正整数 \(l,h\ ...

  7. ELK是什么?

    ELK = ElasticSearch + Logstash + Kibana  Elasticsearch:后台分布式存储以及全文检索 Logstash :  日志加工.“搬运工” Kibana : ...

  8. POJ3311Hie with the Pie(floyd传递+DP,状态压缩)

    问题 The Pizazz Pizzeria prides itself in delivering pizzas to its customers as fast as possible. Unfo ...

  9. HihoCoder1076 与链(数位DP)

    时间限制:24000ms 单点时限:3000ms 内存限制:256MB 描述 给定 n 和 k.计算有多少长度为 k 的数组 a1, a2, ..., ak,(0≤ai) 满足: a1 + a2 +  ...

  10. k8spod资源的基础管理操作

    pod是k8s api中的核心资源类型,它可以定义在json或yaml格式的资源清单中,由资源管理命令进行陈述式或声明式管理.创建时,用户可通过create或apply命令将请求提交到apiserve ...