jmeter后端监听器的实现

使用jmeter+influxdb+grafana实现jmeter nogui执行时性能指标的可视化

1.jmeter添加后端监听器插件

 各配置项解释:

 

  influxDB与传统数据库中的名词比较

2.监听器内部运行过程

 jmeter执行时会向influx会写入两个measurement

  • events:时间表,记录任务开始、结束等内容
  • jmeter:配置项measurement的值,对应着具体的测试数据

流程如下:

 

代码层面:

BackendListener是一种异步监听并获取到测试结果的实现类,也就是说测试(例如发出的HTTP请求的响应结果,及请求数据)都会被封装在SampleResult对象中并被其监听接收

为什么BackendListener能接收SampleResult?
由于BackendListener实现了SampleListener接口,而SampleListener在JMeterThread类中被使用到

在这里插入图片描述

BackendListener有什么用?
由于它是异步接收压测元数据的,会将测试结果的元数据传给BackendListenerClient,后面的核心都是BackendListenerClient

在这里插入图片描述

BackendListenerClient是一个接口类,通过抽象类AbstractBackendListenerClient来扩展其功能,我们要获取到测试元数据都要通过继承AbstractBackendListenerClient来实现,

JMeter原生自带的influxdb、graphite监听器正是通过继承AbstractBackendListenerClient来获取元数据的

在这里插入图片描述

posted @ 2022-05-25 15:40  up~up  阅读(619)  评论(0编辑  收藏  举报