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来获取元数据的
本文来自博客园,作者:up~up,转载请注明原文链接:https://www.cnblogs.com/soft-engineer/p/16309512.html