【jmeter】监听器吞吐量与平均响应时间详解

Jmeter的Throughput和平均响应时间计算方法整理

整理了下Jmeter的Throughput和平均RT的计算,如下公式:

TPS=(sample样本数)/(最后一个线程启动的时间+最后一个线程持续的时间-第一个线程启动的时间)

RT=所有sample样本响应时间和/样本个数

TPS

**定义:**每秒处理的事务数,jmeter的Throughput为吞吐率(请求数/秒),在加了事务控制器后,TPS=Throughput

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

即Throughput =(sample样本数)/(最后一个线程启动的时间+最后一个线程持续的时间-第一个线程启动的时间)

可以这样理解这个公式:绝对的并发是不存在的,请求发出的时间总有先后,绝对的TPS也是无法计算的,统计的角度看,服务器处理请求总数/花费的时间即是TPS,这也是为什么需要不断增大用户数来寻找服务器的最大TPS的原因

RT 平均响应时间

平均响应时间=所有sample样本响应时间和/样本个数

误区:

TPS=请求数/RT   (RT是所有事物的平均时间)

此TPS的计算公式是错误的

数学公式法:

TPS= (number of requests) / (total time)       --------公式1     TPS的定义公式

TPS=1/RT * 请求数 = 样本个数2/所有sample样本响应时间和 -----------公式2 带入公式 平均响应时间=所有sample样本响应时间和/样本个数
假设公式2等于公式1 ,则

(number of requests) / (total time) = 样本个数2/所有sample样本响应时间和  
  即:
  1/ (total time)  =  样本个数 / 所有sample样本响应时间和 

显然等式两边不成立,假设不成立
另:number of requests 是等于 样本个数 等于 请求数

场景分析法:

场景1,A应用是单线程处理,处理一个请求需要1s,5个VU去请求一次,第一个请求花费了1s,第二个花了2s...第五个花了5s,5个请求总耗时5秒,5个请求响应时间的总和是(5+4+3+2+1)=15 s,总请求数是5,所以A系统的TPS = 5/5 = 1,平均响应时间是(5+4+3+2+1)/5=3s,此时若按照TPS=1/RT*请求数  计算,则TPS=1/3 * 5 = 5/3 , 显然是不对的

场景2,当去请求多个事物时,此时这个公式是明显错误的
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

山河不见老

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值