当前位置: 首页 > article >正文

jmeter 镜像构建

jmeter 镜像构建

准备

  • 下载 jmeter 安装包,官网下载
wget https://archive.apache.org/dist/jmeter/binaries/apache-jmeter-${JMETER_VERSION}.tgz

wget https://downloads.apache.org/jmeter/binaries/apache-jmeter-5.6.3.tgz
  • 下载 jmeter 插件包,默认的若不满足,先下载PluginsManager,https://jmeter-plugins.org/wiki/PluginsManager/
  • 手动打包插件
    Windows目录 C:\johnny\soft\apache-jmeter-5.6.3\lib\ext 将所有插件打包,plugins.tar

normal dockerfile

# Author: johnny

FROM openjdk:8

WORKDIR /opt/

ARG JMETER_VERSION=5.6.3

COPY apache-jmeter-${JMETER_VERSION}.tgz /opt

RUN mkdir /opt/{test,report} && \
    tar -xzf apache-jmeter-${JMETER_VERSION}.tgz && \
    mv apache-jmeter-${JMETER_VERSION} jmeter && \
    rm apache-jmeter-${JMETER_VERSION}.tgz
# 按需
ADD plugins.tar /opt/jmeter/lib/ext

ENV JMETER_HOME /opt/jmeter
ENV PATH $JMETER_HOME/bin:$PATH

EXPOSE 8686

CMD ["jmeter", "-n", "-t", "/opt/test/test.jmx", "-l", "/opt/report/result.jtl", "-e", "-o", "/opt/report"]

heap dockerfile

# Author: johnny

FROM openjdk:8

WORKDIR /opt/

ARG JMETER_VERSION=5.6.3

COPY apache-jmeter-${JMETER_VERSION}.tgz /opt

RUN mkdir /opt/{test,report} && \
    tar -xzf apache-jmeter-${JMETER_VERSION}.tgz && \
    mv apache-jmeter-${JMETER_VERSION} jmeter && \
    rm apache-jmeter-${JMETER_VERSION}.tgz
# 按需
ADD plugins.tar /opt/jmeter/lib/ext

ENV JMETER_HOME /opt/jmeter
ENV PATH $JMETER_HOME/bin:$PATH

EXPOSE 8686
# 设置JMeter的堆内存大小
ENV HEAP="-Xms2g -Xmx4g"

CMD ["jmeter", "-n", "-t", "/opt/test/test.jmx", "-l", "/opt/report/result.jtl", "-e", "-o", "/opt/report"]

JMeter的默认堆内存设置通常为-Xms1g -Xmx1g,即初始堆内存和最大堆内存都设置为1GB
如果出现OOM的错误,可检查发压端主机资源,也可以考虑增加JVM堆内存,报错:Uncaught Exception java.lang.OutofMemoryError: Java heap space
增加JVM堆内存:在Dockerfile中添加了ENV HEAP=“-Xms2g -Xmx4g”,这会为JMeter的JVM设置初始堆内存为2GB,最大堆内存为4GB。

构建镜像

docker build -t jmeter:5.6.3 .

运行

# jmeter要求report目录必须为空
rm -rf /home/johnny/jmeter/report/

docker run --rm --name jmeter -v /home/johnny/jmeter/test.jmx:/opt/test/test.jmx -v /home/johnny/jmeter/report:/opt/report jmeter:5.6.3

cd /home/johnny/jmeter/report
## py3在线查看report
python -m SimpleHTTPServer 9999

导出report

tar -cvf report.tar report/

http://www.kler.cn/a/613414.html

相关文章:

  • llamafactory微调效果与vllm部署效果不一致如何解决
  • 【 C 语言实现顺序表的基本操作】(数据结构)
  • MinGW下编译ffmpeg源码时生成compile_commands.json
  • 太阳能台风预警宣传信号智慧杆:科技赋能防灾减灾的新标杆
  • 专注自习室:番茄工作法实践
  • es6的箭头函数与普通函数的区别,箭头函数的this通常指向哪里,箭头函数可以用作构造函数吗?
  • 哈希冲突 及 双哈希
  • 【LVS】负载均衡群集部署(DR模式)
  • 数据库基础之DDLDML
  • ecovadis评估有什么流程?对企业发展的重要意义
  • 方阵幂次(矩阵快速幂)
  • 面试的时候问到了HTML5的新特性有哪些
  • 使用 rsync 进行服务器文件同步与优化
  • E5071C数据保存教程:SNP文件/CSV导出+远程传输步骤一键收藏
  • 详细介绍ASSERT()
  • Go 语言标准库中strings和strconv详细功能介绍与示例
  • vue3 vue-router 传递路由参数
  • .netCore的winform程序如何调用webapi
  • 树莓派超全系列文档--(11)RaspberryOS上使用 Python控制GPIO
  • 全面解析PRN文件:从原理到可视化的完整指南 【标签打印】