JMeter-InfluxDB-Grafana之性能测试
一、工具介绍
JMeter是一个开源的性能测试工具,使用Java语言开发,可对服务器、网络或对象模拟巨大的负载,在不同压力类别下测试它们的强度和分析整体性能。
InfluxDB是一个开源的时序数据库,使用GO语言开发,特别适合用于处理和分析资源监控数据这种时序相关数据,InfluxDB自带的各种特殊函数如求标准差、随机取样数据、统计数据变化比等,使数据统计和实时分析变得十分方便。
Grafana是一个跨平台的开源度量分析和可视化工具,可以查询采集数据可视化展示,Grafana支持许多不同的数据源,如:Graphite,InfluxDB,OpenTSDB,Prometheus,Elasticsearch,CloudWatch和KairosDB
二、环境搭建
基于Jmeter、InfluxDB、Grafana可以快速搭建一套性能时序数据存储、展示系统
2.1 docker拉取镜像文件
#docker pull influxdb:1.8.6
#docker pull grafana/grafana
2.2 查看全部镜像
#docker images
2.3 启动Influxdb容器
#docker run -itd --name test_influxdb -p 8083:8083 -p 8086:8086 influxdb:1.8.6
2.4 进入Influxdb容器,并创建数据库
#docker exec -it test_influxdb /bin/bash
#cd /usr/bin
#./influx
>show databases;
>create database jmeter;
>use jmeter;
>show measurements;
>select * from jmeter;
2.4 JMeter添加后端监控器(Backend Listener)
l Backend Listener implementation:
org.apache.jmeter.visualizers.backend.influxdb.InfluxdbBackendListenerClient
l influxdbUrl
http://xxx.xxx.xxx.xxx:8086/write?db=jmeter
l measurement
jmeter
2.5 启动grafana容器
docker run -itd --name=test_grafana -p 3000:3000 grafana/grafana
2.6 访问搭建的grafana服务,添加数influxdb数据源
(1) http://xxx.xxx.xxx.xxx:3000
(2) 输入用户名:admin 密 码:123456
(3) 选择设置-Data sources-Influx
(4) 配置influxdb
l HTTP-URL: http://xxx.xxx.xxx.xxx:8086
l Database: jmeter
l HTTP Method: GET
(5)配置展示数据
l 在Dashboards-Browse,创建文件夹-JMeter性能测试
l 进入JMeter性能测试文件夹,导入模板(JSON文件)
https://grafana.com/grafana/dashboards/?dataSource=influx
apache-jmeter-dashboard-by-ubikloadpack_rev1.json
l 配置导入的JMeter模板
ü DB name: InfluxDB
ü Measurement name: jmeter
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?