目光凝视远方的同时,也请夯实脚下土地。
一般我们说起接口的性能指标如何,都离不开rt,但是你真的清楚 jmeter 相关报告里面关于 rt 的解释?往往一个小小的指标解读偏差,会带来一场风暴。
Aggregate Report(聚合报告)
这份聚合报告,相信很多同学都不陌生,单纯看这个结果,相信不同的人对这里average, 90% line, 99% line 指标的理解也会不同?笔者最近就听到一些新的理解,才发现大家对一些常见的指标存在理解偏差。
比如这里的 99% line,有的同学会理解成:99% 的接口 RT是这个值,其实并不是的,这里的 99% line指的是 99% 的请求RT 在这个值以内,注意是「以内」
举个最极端的例子:
比如 100 个顺序请求,第 99 个请求的 RT 在 4s,那么这里的 99% 的值就是 4s,意味着 99% 的请求的 RT 响应时间在 4s 以内
然后我们再来看看官方文档的释义,纠正认识偏差的同时温故知新:
「Label」 - The label of the sample. If "Include group name in label?" is selected, then the name of the thread group is added as a prefix. This allows identical labels from different thread groups to be collated separately if required.
「Samples」 - The number of samples with the same label
「Average」 - The average time of a set of results
「Median」 - The median is the time in the middle of a set of results. 50 % of the samples took no more than this time; the remainder took at least as long.
「90% Line」 - 90 % of the samples took no more than this time. The remaining samples took at least as long as this. (90th percentile)
「95% Line」 - 95 % of the samples took no more than this time. The remaining samples took at least as long as this. (95th percentile)
「99% Line」 - 99 % of the samples took no more than this time. The remaining samples took at least as long as this. (99th percentile)
「Min」 - The shortest time for the samples with the same label
「Max」 - The longest time for the samples with the same label
「Error %」 - Percent of requests with errors
「Throughput」 - the Throughput is measured in requests per second/minute/hour. The time unit is chosen so that the displayed rate is at least 1.0. When the throughput is saved to a CSV file, it is expressed in requests/second, i.e. 30.0 requests/minute is saved as 0.5.
「Received KB/sec」 - The throughput measured in received Kilobytes per second
「Sent KB/sec」 - The throughput measured in sent Kilobytes per second
翻译如下
「标签」 - 样本的标签。如果选择了"在标签中包含组名?",那么线程组的名称将作为前缀添加。这使得来自不同线程组的相同标签能够根据需要分别进行归类。
「样本」 - 具有相同标签的样本数量
「平均值」 - 一组结果的平均时间
「中位数」 - 中位数是一组结果中间的时间。50%的样本所需时间不超过这个值;剩下的样本至少需要这么长的时间。
「90% 线」 - 90%的样本所需时间不超过这个值。剩余的样本至少需要这么长的时间。(90百分位)
「95% 线」 - 95%的样本所需时间不超过这个值。剩余的样本至少需要这么长的时间。(95百分位)
「99% 线」 - 99%的样本所需时间不超过这个值。剩余的样本至少需要这么长的时间。(99百分位)
「最小值」 - 同一标签样本中的最短时间
「最大值」 - 同一标签样本中的最长时间
「错误百分比」 - 出现错误的请求百分比
「吞吐量」 - 吞吐量以每秒/分钟/小时的请求数度量。时间单位的选择确保显示的速率至少为1.0。当吞吐量保存到CSV文件时,它以每秒的请求数表示,即30.0请求/分钟被保存为0.5。
「接收KB/秒」 - 以每秒接收的千字节衡量的吞吐量
「发送KB/秒」 - 以每秒发送的千字节衡量的吞吐量
标签:标签,样本,took,99%,Aggregate,samples,time,Report,Jmeter From: https://blog.csdn.net/streamlong/article/details/142983699这份报告里面 99% line 的指标值比均值更具有参考意义