性能测试|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创建数据库influx create database jmeter show databases二、grafana安装并运行docker run -itd --name grafana -p 3000:3000 grafana/grafana进入容器docker exec -it grafana /bin/bash访问grafana页面http://ip:3000三、jmeter安装直接用命令下载jmeterwget 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 /jmeterdocker RUN mkdir -p /jmeterdocker/test RUN mkdir -p /jmeterdocker/test/input/jmx RUN mkdir -p /jmeterdocker/test/input/testdata RUN mkdir -p /jmeterdocker/test/report/html RUN mkdir -p /jmeterdocker/test/report/jtl RUN mkdir -p /jmeterdocker/test/report/outputdata RUN chmod -R 777 /jmeterdocker ENV JMETER_VERSION5.4.3 ENV 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 --namejmeter -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/bash cd /jmeterdocker/test/input/jmx jmeter -n -t ***.jmx -l test.jtl 参数说明 -n 非 GUI 模式 - 在非 GUI 模式下运行 JMeter -t 测试文件 - 要运行的 JMeter 测试脚本文件 -l 日志文件 - 记录结果的文件运行结果如图所示