Jmeter聚合报告:
#samples:总请求数(samples样本个数)(number of requests)
Throughput 吞吐量(Request/Sec) 每秒多少请求
在jmeter中,大多数情况(未有错误时)下,Throughput吞吐率被认为等于TPS
Average 平均响应时间
Received KB/sec :每秒从服务器端接收到的数据量(每秒发送多少字节 )
Sent KB/sec :每秒向服务器发送数据量(每秒发送多少字节 )
其他:
thread:请求并发数
total time:请求持续执行的时间(实际持续时间可能大于填写持续时间)
total time = 请求测试结束时间 - 请求测试开始时间
(最后一个线程启动的时间+最后一个线程持续的时间-第一个线程启动的时间)
请求测试结束时间 = MAX(最后1个请求启动时间timeStamp + Elapsed Time)
请求测试开始时间 = MIN(第1个请求启动时间timeStamp)
计算:
Throughput=(#sample样本数)/(最后一个线程启动的时间+最后一个线程持续的时间-第一个线程启动的时间)
=(number of requests)/total time=Jmeter(#Samples)/total time
Average=所有请求的响应时间之和/总请求数= Jmeter sum(elapsed)/#Samples
(所有sample样本响应时间总和/Samples样本个数)
Received KB/sec=所有的相同请求的bytes总和 / 1024 / 请求持续运行的时间=sum(bytes)/1024/total time
Sent KB/sec =所有的相同请求的sentBytes总和 / 1024 / 线程持续运行的时间=sum(sentBytes)/1024/total time
===================
Throughput (TPS)=Jmeter(#Samples)/total time
Average= Jmeter sum(elapsed)/#Samples
解释:
TPS:每秒处理的事务数,jmeter的Throughput为吞吐率(请求数/秒),在加了事务控制器后,TPS=Throughput
宏观上:TPS=并发数/响应时间,jmeter的Throughput = (number of requests) / (total time) ,即
Throughput =(sample样本数)/(最后一个线程启动的时间+最后一个线程持续的时间-第一个线程启动的时间)
可以这样理解这个公式:绝对的并发是不存在的,请求发出的时间总有先后,绝对的TPS也是无法计算的,统计的角度看,服务器处理请求总数/花费的时间即是TPS,这也是
为什么需要不断增大用户数来寻找服务器的最大TPS的原因