性能测试--InfluxDB+Grafana+Jmeter搭建性能监控平台 (一)

本文涉及的产品
可观测可视化 Grafana 版,10个用户账号 1个月
性能测试 PTS,5000VUM额度
简介: 性能测试--InfluxDB+Grafana+Jmeter搭建性能监控平台

前戏


Jmeter原生测试报告有如下缺点

  • 不具备实时性
  • 报告中的数据是测试时间段内的平均值

在如上缺点中,就诞生了性能监控平台,性能监控平台比jmeter的优势如下

  • 实时展示Jmeter压测数据
  • 数据范围可选
  • 界面美观

性能监控平台的组成如下

  • Jmeter:压测工具,产生压测数据
  • InfluxDB:开源时序数据库,特别适合用于处理和分析资源监控数据,用于存储压测数据。
  • Grefana:度量分析与可视化图标展示工具,可以支持不同种类的数据源,用于存储与InfluxDB中的数据以图标的形式展示出来。


InfluxDB部署


自从学会了docker之后,所有的环境部署我都会优先考虑docker,部署起来简单方便

部署之前确保自己已经安装了docker并且启动了,如何部署查看我的docker文章。

1.下载influxDB镜像

docker pull influxdb

2.下载完查看镜像

docker images

3.启动 influxDB 容器,将新 influxDB 容器命名为 jmeterdb, 执⾏docker创建容易命令:

docker run -d -p 8086:8086 -p 8083:8083 --name=jmeterdb influxdb

4.执⾏如下命令进⼊容器内部

docker exec -it jmeterdb /bin/bash

5.在容器内部创建一个数据库,用于收集jmeter发送的压测数据

执行influx命令进入命令台

使用 show databases; 查看已存在的数据库,只有一个_internal

6.我们创建一个名为jmeter的数据库,用来存放我们的数据


将jmeter收集到的数据发送给influxdb


上面我们已经在我们的服务器上搭建好了influxdb,并且创建了一个数据库,名为jmeter。现在我们就用jmeter往influxdb里发送数据。

在Jmeter中添加Backend Listener组件,用于收集数据并发送给influxdb

默认页面如下

在 Backend Listener implementation 中选择InfluxdbBackendListenerClient (注意:必须使⽤jmeter 5.0以上版本,否则需要单独装插件才可以看到这个组件)

  • 在influxdbURL中将实际的influxdb hostname填写进去
  • 在application中填写你的应用名称,也可以不改
  • 在 tetestTile 中可以修改,也可以不改
  • 其他配置保存不变

运行Jmeter,然后在influxdb中检验是否已经能够接收到数据


相关实践学习
通过可观测可视化Grafana版进行数据可视化展示与分析
使用可观测可视化Grafana版进行数据可视化展示与分析。
相关文章
|
11天前
|
测试技术 数据库 UED
Python 性能测试进阶之路:JMeter 与 Locust 的强强联合,解锁性能极限
【9月更文挑战第9天】在数字化时代,确保软件系统在高并发场景下的稳定性至关重要。Python 为此提供了丰富的性能测试工具,如 JMeter 和 Locust。JMeter 可模拟复杂请求场景,而 Locust 则能更灵活地模拟真实用户行为。结合两者优势,可全面评估系统性能并优化瓶颈。例如,在电商网站促销期间,通过 JMeter 模拟大量登录请求并用 Locust 模拟用户浏览和购物行为,可有效识别并解决性能问题,从而提升系统稳定性和用户体验。这种组合为性能测试开辟了新道路,助力应对复杂挑战。
33 2
|
6天前
|
缓存 Java 测试技术
谷粒商城笔记+踩坑(11)——性能压测和调优,JMeter压力测试+jvisualvm监控性能+资源动静分离+修改堆内存
使用JMeter对项目各个接口进行压力测试,并对前端进行动静分离优化,优化三级分类查询接口的性能
谷粒商城笔记+踩坑(11)——性能压测和调优,JMeter压力测试+jvisualvm监控性能+资源动静分离+修改堆内存
|
7天前
|
移动开发 JSON Java
Jmeter实现WebSocket协议的接口测试方法
WebSocket协议是HTML5的一种新协议,实现了浏览器与服务器之间的全双工通信。通过简单的握手动作,双方可直接传输数据。其优势包括极小的头部开销和服务器推送功能。使用JMeter进行WebSocket接口和性能测试时,需安装特定插件并配置相关参数,如服务器地址、端口号等,还可通过CSV文件实现参数化,以满足不同测试需求。
52 7
Jmeter实现WebSocket协议的接口测试方法
|
10天前
|
测试技术 持续交付 Apache
Python性能测试新风尚:JMeter遇上Locust,性能分析不再难🧐
【9月更文挑战第10天】随着软件应用的不断扩展,性能测试成为确保系统稳定运行的关键环节。本文通过对比Apache JMeter和Locust,探讨了如何在Python环境中利用这两款工具挖掘更多性能测试潜力。JMeter是一款成熟且功能强大的开源工具,支持多种协议,适用于各种应用的测试;而Locust则基于Python,通过简单脚本模拟HTTP请求,更适合Web应用测试。
24 2
|
15天前
|
缓存 测试技术 Apache
告别卡顿!Python性能测试实战教程,JMeter&Locust带你秒懂性能优化💡
【9月更文挑战第5天】性能测试是确保应用在高负载下稳定运行的关键。本文介绍Apache JMeter和Locust两款常用性能测试工具,帮助识别并解决性能瓶颈。JMeter适用于测试静态和动态资源,而Locust则通过Python脚本模拟HTTP请求。文章详细讲解了安装、配置及使用方法,并提供了实战案例,帮助你掌握性能测试技巧,提升应用性能。通过分析测试结果、模拟并发、检查资源使用情况及代码优化,确保应用在高并发环境下表现优异。
42 5
|
12天前
|
消息中间件 监控 测试技术
惊呆了!Python性能测试高手都用这些神器:JMeter+Locust,效率翻倍📈
【9月更文挑战第8天】在软件开发中,性能测试对确保应用稳定性和高效运行至关重要。对于Python开发者而言,选择合适的性能测试工具能显著提升测试效率并精准定位性能瓶颈。本文深入探讨了JMeter和Locust这两款工具的独特优势。JMeter作为跨平台的性能测试工具,支持多种协议,具备高度可定制性和扩展性;而Locust则专为Python应用设计,利用协程实现高并发,提供实时监控和分布式测试功能。两者结合使用,可在实际项目中实现1+1>2的效果,帮助开发者构建全面高效的测试方案,保障应用稳定运行。
41 1
|
14天前
|
测试技术 Apache 数据库
从慢如蜗牛到飞一般的感觉!Python性能测试实战,JMeter&Locust助你加速🏃‍♂️
【9月更文挑战第6天】你的Python应用是否曾因响应缓慢而让用户望而却步?借助JMeter与Locust,这一切将迎刃而解。JMeter作为Apache基金会的明星项目,以其强大的跨平台和多协议支持能力,成为性能测试领域的魔法师;而Locust则以Python的简洁与高效,让性能测试更加灵活。通过实战演练,你可以利用这两款工具轻松识别并解决性能瓶颈,优化数据库查询、网络配置等,最终使应用变得敏捷高效,轻松应对高并发挑战。
12 1
|
16天前
|
测试技术 持续交付 Apache
性能测试不再愁!Python+JMeter+Locust,三步打造高性能应用
【9月更文挑战第4天】随着互联网的发展,软件性能成为衡量应用成功的关键。性能测试确保应用稳定高效运行,但复杂环境和多样需求带来了挑战。Python、JMeter和Locust三款工具可构建高效全面的性能测试方案。Python语法简洁,库丰富;JMeter提供图形界面,支持多种协议;Locust基于Python,简单易用且高度可扩展。结合三者,能满足复杂需求,保证灵活性与高效性。无论初学者还是资深工程师,都能确保应用高性能运行。
22 1
|
4月前
|
SQL 运维 监控
关系型数据库性能监控工具
【5月更文挑战第21天】
79 2
|
19天前
|
监控 Java 开发者
揭秘Struts 2性能监控:选对工具与方法,让你的应用跑得更快,赢在起跑线上!
【8月更文挑战第31天】在企业级应用开发中,性能监控对系统的稳定运行至关重要。针对流行的Java EE框架Struts 2,本文探讨了性能监控的工具与方法,包括商用的JProfiler、免费的VisualVM以及Struts 2自带的性能监控插件。通过示例代码展示了如何在实际项目中实施这些监控手段,帮助开发者发现和解决性能瓶颈,确保应用在高并发、高负载环境下稳定运行。选择合适的监控工具需综合考虑项目需求、成本、易用性和可扩展性等因素。
27 0