jmeter压测学习23-监听器之响应时间Response Times Over Time

前言

压测的时候,我们会经常关注2个重要的指标 TPS 和 RT

  • TPS 每秒处理的事务数(Transactions per Second),jmeter的Throughput为吞吐量(请求数/秒)
  • RT 响应时间(Reponse Time),从发起请求到完全接收到应答的时间消耗。

每秒处理的事务数(Transactions per Second)

前面介绍了监听器每秒事务数(Transactions per Second),可以查看前面的这篇https://www.cnblogs.com/yoyoketang/p/14181902.html

先了解下什么是TPS ?

TPS:每秒处理的事务数,jmeter的Throughput为吞吐率(请求数/秒)

宏观上:TPS=并发数/响应时间,jmeter的Throughput = (number of requests) / (total time)

很多小伙伴会死记硬背公式来推算TPS值,这里涉及到一个概念并发数,这个并发数是指单位时间内发出去的请求数。
这里的单位时间并不是1秒,是一个绝对的同一时间,比如0.0001秒,甚至更小的时间。
那么这里的绝对并发,我们是没法知道的,我们通常说的并发是一个相对的并发,相对并发,也就是我们线程组里面设置的(线程数)虚拟用户数,可以这么理解。

我们可以根据聚合报告看到,平均响应时间是94毫秒,吞吐量27.9/sec

通过上面的公式 tps = 线程数3/平均响应时间0.094秒 ,算出的结果是31.9,跟统计的27.9差不多。

也可以这样理解这个公式,绝对的并发是不存在的,请求发出的时间总有先后,绝对的TPS也是无法计算的,统计的角度看

TPS = 服务器处理请求总数/花费的总时间

我们设置线程组的持续压测时间为5秒,设置线程数3,于是压测的结果TPS值是27.5

根据公式TPS = 总请求数139/总时长5秒,得到的结果是27.8,这样就很接近报告的TPS值了

为了找到服务器的最大TPS值,我们一般设置不同的并发数(线程组)来压测。

响应时间(Reponse Time)

RT 也就是平均响应时间(Reponse Time), 在聚合报告里面可以看平均值(单位是毫秒),如果我们想查看更详细的报告,跟着每个时间段的平均响应时间。

添加-监听器-jp@gc - Response Times Over Time

压测后,先看聚合报告的平均值92毫秒

再看实时监控的平均响应时间

这种曲线图,在写性能报告的时候加上会显示更专业
原文地址https://www.cnblogs.com/yoyoketang/tag/jmeter/,转载请注明出处!

posted @ 2020-12-24 15:53  上海-悠悠  阅读(17337)  评论(0编辑  收藏  举报