jmeter常用的性能测试监听器


概述

jmeter中提供了很多性能数据的监听器,我们通过监听器可以来分析性能瓶颈

本文以500线程的阶梯加压测试结果来描述图表。

常用监听器

1:Transactions per Second

监听动态TPS,用来分析吞吐量。其中横坐标是运行时间,纵坐标是TPS值。红色表示通过的TPS,绿色表示失败的。

最大TPS大约在140左右,从1分26秒左右,开始有未通过的事物

2:Hits per Second

动态监听单位时间的点击率,也就是触发的请求数。其中横坐标是运行时间,纵坐标是HPS值。

点击率波动较大,且不能持续上升。说明性能很不稳定

3:Response Times Over Time

监听整个事物运行期间的响应时间。其中横坐标是运行时间,纵坐标是响应时间(单位是毫秒)

响应时间在4950ms左右开始稳定下来,后续又经历一次大的波动

4:Response Times vs Threads

线程活动期间的响应时间监听。其中横坐标是活动的线程数(也就是并发数),纵坐标是响应时间(单位是毫秒)

5: Active Threads Over Time

监听单位时间内活动的线程数。其中横坐标是单位时间(单位是毫秒),纵坐标是活动线程数(也就是并发数)

6:Response Times Percentiles

监听响应时间分布的百分比。其中横坐标是请求数的百分比,纵坐标是响应时间。此图表示有99.7%的请求响应时间在5s以内。

7:Response Times Distribution

响应时间分布的柱状图。其中横坐标是柱状分布图,纵坐标是响应时间。此图表示大约有111个请求响应时间在5076ms。

8:Composite Graph

组合式的监听器。其中横坐标是运行时间,纵坐标是各性能数据的汇总值(其中有一些数据需要除以10)。

总结

不同的监听器可以监听不同的性能数据,但是想要在图表中直观的分析出性能的瓶颈,就需要组合式的监听器。例如通过响应时间和吞吐量的分布得出吞吐量的拐点。

通过以上图表能看出来,在持续加压的事物场景中,99.7%的请求响应时间都控制在了5s以内。

 

性能指标监听

概述

性能测试过程中,想要得到比较靠谱的性能数据,就不得不对各种性能数据进行动态监听。jmeter中提供了很多性能数据的监听器,我们通过监听器可以来分析性能瓶颈

本文以500线程的逐渐加压测试结果来描述图表(压测百度

 

常用监听器

Transactions per Second

监听动态TPS,用来分析吞吐量。其中横坐标是运行时间,纵坐标是TPS值。红色表示通过的TPS,绿色表示失败的。

可以看出在56s左右,tps达到最高点1202/s,之后开始直线下降。

Hits per Second

动态监听单位时间的点击率,也就是触发的请求数。其中横坐标是运行时间,纵坐标是HPS值。

可以看出在58s的时候,点击率出现波动;一分钟的时候,点击率达到最大(996/s),之后直线下降

Response Times Over Time

监听整个事物运行期间的响应时间。其中横坐标是运行时间,纵坐标是响应时间(单位是毫秒)

响应时间在达到3233ms之后左右开始急剧上升,此处就是性能瓶颈

Response Times vs Threads

线程活动期间的响应时间监听。其中横坐标是活动的线程数(也就是并发数),纵坐标是响应时间(单位是毫秒)

Active Threads Over Time

监听单位时间内活动的线程数。其中横坐标是单位时间(单位是毫秒),纵坐标是活动线程数(也就是并发数)

Response Times Percentiles

监听响应时间分布的百分比。其中横坐标是请求数的百分比,纵坐标是响应时间。此图表示有90%的请求响应时间在270ms以内。

Response Times Distribution

响应时间分布的柱状图。其中横坐标是柱状分布图,纵坐标是响应时间。

Composite Graph!

组合式的监听器。其中横坐标是运行时间,纵坐标是各性能数据的汇总值(其中有一些数据需要除以10

此图表示运行到一分钟左右,吞吐量达到瓶颈点,之后吞吐量急剧下降,响应时间急剧上升

 

 

这里是对每个插件的用处进行解释:

PerfMon Metrics Collector:用于监控机器的CPU、Memory、swap、Disks I/O、Networks I/O。CPU:cpu占用量百分比;

Memory:存储量的使用情况;swap:交换区的使用情况;Disks I/O:磁盘I/O;Networks I/O:网络I/O

Hits per Second:每秒测试计划所产生的点击服务器的次数。

Bytes Throughput Over Time:在压力测试期间接收和发送的bytes数。

Composite Graph:将你的测试计划中的所有图表集合在同一张图表中以方便查看。

Response Codes per Second:每秒返回的响应码,表明jmeter测试期间,随着时间的推移返回的响应码,从中我们可以看到测试期间在哪个时间段内出现了错误,就可以分析在该时间内系统的什么环境因素导致的错误。

Response Latencies Over Time:每秒钟的响应等待时间,表明jmeter测试期间,随着时间的推移,系统的响应等待时间的变化,也是系统随着时间推移系统效率的变化。

Response Times Distribution:响应时间分布,X轴表示的是响应时间,Y轴表示的是响应次数,F(X,Y)表示系统在某种响应时间次数是多少,如果响应时间短的地方,响应次数多,说明系统的效率越高。

Response Times Over Time:每秒钟响应时间,X轴表示的是系统运行的时刻,Y轴表示的是响应时间,F(X,Y)表示系统随着时间的推移,系统的响应时间的变化,可以看出响应时间的稳定性。

Response Times Percentiles:响应时间的百分比,X轴表示的是百分比,Y轴表示的是响应时间,F(X,Y)表示低于某个百分比的响应时间,比如有80%的响应低于400ms。

Response Times vs Threads:响应时间用户数,X轴表示的是活动线程数,也就是并发访问的用户数,Y轴表示的是响应时间,F(X,Y)表示在某种并发量的情况下,系统的响应时间是多少。

Transaction Throughput vs Threads:每个活动线程数的事务吞吐量,X轴表示的是活动线程数,Y轴表示的是事务吞吐量,F(X,Y)的含义是当系统处于某个活动线程数时,系统当时的事务吞吐量是多少,比如当有10个活动线程时,事务吞吐量是100/s,而当有20个活动线程时,事务吞吐量是50/s,说明随着用户访问的增加,系统的处理效率开始下降了,从这个图中可以找到一个临界点,在多大的活动线程数时,系统达到最大的吞吐量。

Transactions per Second:每秒的事务数,X轴表示访问结束的时刻,Y轴表示访问量,F(X,Y)表示在某个结束时刻,一共有多少的访问量结束访问。

Active Threads Over Time:每秒的活动线程数,X轴表示访问的时刻,Y轴表示活动线程数,F(X,Y)表示某个时刻的活动线程数


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM