性能测试 —— docker容器下搭建JMeter+Grafana+Influxdb监控可视化平台!

前言

在当前激烈的市场竞争中,创新和效率成为企业发展的核心要素之一。在这种背景下,如何保证产品和服务的稳定性、可靠性以及高效性就显得尤为重要。

而在软件开发过程中,性能测试是一项不可或缺的环节,它可以有效的评估一个系统、应用或者软件的性能指标。然而,如何提升性能测试效率,把测试结果转化为有价值的信息,则是一个更加重要的问题。

因此,本文提供了一个基于JMeter、Grafana和Influxdb的优化整合方案,将三个工具进行智能化整合,通过实时监控和数据分析,帮助团队更好地发现和解决性能问题,为企业提升产品和服务的质量打下坚实的基础。无论您是团队负责人、测试工程师、运维工程师或其他技术人员,都可以通过本文的方案,轻松打造智能化性能测试监控平台,从而在激烈的市场竞争中获得更大的优势。

一、influxdb安装并运行(选择2.0以下版本)

复制代码
docker run -itd --name influxdb -p 8086:8086 influxdb:1.8.3

进入容器

复制代码
docker exec -it influxdb /bin/bash

创建数据库

复制代码
influxcreate database jmetershow databases

二、grafana安装并运行

复制代码
docker run -itd --name grafana -p 3000:3000 grafana/grafana

进入容器

复制代码
docker exec -it grafana /bin/bash

访问grafana页面

复制代码
http://ip:3000

三、jmeter安装

直接用命令下载jmeter

复制代码
wget https://mirrors.bfsu.edu.cn/apache//jmeter/binaries/apache-jmeter-5.4.3.tgz

我们使用dockerfile安装,内容如下

复制代码
FROM java:8 ENV http_proxy ""ENV https_proxy "" RUN mkdir /jmeterdockerRUN mkdir -p /jmeterdocker/testRUN mkdir -p /jmeterdocker/test/input/jmxRUN mkdir -p /jmeterdocker/test/input/testdataRUN mkdir -p /jmeterdocker/test/report/htmlRUN mkdir -p /jmeterdocker/test/report/jtlRUN mkdir -p /jmeterdocker/test/report/outputdataRUN chmod -R 777 /jmeterdocker ENV JMETER_VERSION=5.4.3ENV JMETER_HOME=/jmeterdocker/apache-jmeter-${JMETER_VERSION}ENV JMETER_PATH=${JMETER_HOME}/bin:${PATH}ENV PATH=${JMETER_HOME}/bin:${PATH} COPY apache-jmeter-${JMETER_VERSION}.tgz /jmeterdocker RUN cd /jmeterdocker \    && tar xvf apache-jmeter-${JMETER_VERSION}.tgz \    && rm apache-jmeter-${JMETER_VERSION}.tgz

在dockerfile文件路径下执行命令

复制代码
docker build -t jmeter .

创建jmeter容器

复制代码
docker run -itd --name=jmeter -v /tmp/jmeterspace/test/input/jmx:/jmeterdocker/test/input/jmx \-v /tmp/jmeterspace/test/input/testdata:/jmeterdocker/test/input/testdata \-v /tmp/jmeterspace/test/report/html:/jmeterdocker/test/report/html \-v /tmp/jmeterspace/test/report/jtl:/jmeterdocker/test/report/jtl \-v /tmp/jmeterspace/test/report/outputputdata:/jmeterdocker/test/report/outputdata \-p 1099:1099 \jmeter

将jmeter脚本放在容器外的

/tmp/jmeterspace/test/input/jmx路径下

进入容器,执行以下命令

复制代码
docker exec -it jmeter /bin/bashcd /jmeterdocker/test/input/jmxjmeter -n -t ***.jmx -l test.jtl参数说明:-n 非 GUI 模式 -> 在非 GUI 模式下运行 JMeter-t 测试文件 -> 要运行的 JMeter 测试脚本文件-l 日志文件 -> 记录结果的文件

运行结果如图所示:

最后感谢每一个认真阅读我文章的人,看着粉丝一路的上涨和关注,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走!

软件测试面试文档

我们学习必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有字节大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。

相关推荐
yuzhuanhei1 小时前
docker常用命令
运维·docker·容器
我叫张小白。1 小时前
Dify系列(一):平台安装部署+界面操作
docker·ai·语言模型·大模型·dify·智能体
anarckk1 小时前
docker volume 导入导出命令
运维·docker·容器
东离与糖宝1 小时前
金三银四Java校招面经:从双非到大厂Offer,我只准备了这些
java·面试
红云梦2 小时前
简历投了 100 份没回音?我给面试平台加了个“简历雷达“
人工智能·面试·职场和发展
杨浦老苏2 小时前
音乐和有声读物播放器AudioDock
docker·群晖·多媒体·音乐·有声读物
星辰_mya3 小时前
InnoDB的“身体结构”:页、Buffer Pool与Redo Log的底层奥秘
数据库·mysql·spring·面试·系统架构
gordon~93 小时前
Windows 11 wsl 中安装的Ubuntu-24.04 中装docker
windows·ubuntu·docker
iPadiPhone3 小时前
分布式架构的“润滑剂”:RabbitMQ 核心原理与大厂面试避坑指南
分布式·后端·面试·架构·rabbitmq
kyriewen3 小时前
DOM树与节点操作:用JS给网页“动手术”
前端·javascript·面试