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

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/

相关文章:

  • PostgreSQL: GIN 索引详解
  • 详解c++中的可调用对象,std::function、Lambda表达式、std::bind等
  • AQUA爱克泳池设备从水质安全到舒适体验,全链路护航小区泳池健康
  • npm install 卡在创建项目:sill idealTree buildDeps
  • 使用react 引入相对路径文件
  • Golang Beego SQL链式查询(包含Join关联)
  • Git 之配置ssh
  • Python与面向对象编程的七大核心概念:解析与示例
  • 一周掌握Flutter开发--8. 调试与性能优化(下)
  • 内网渗透-CS免杀与应用开发
  • 操作系统实验7 显示进程列表
  • 中科亿海微SoM模组——AI图像推理解决方案
  • 金融级密码管理器——抗内存扫描的密钥保险箱
  • 【C++】 动态内存管理
  • python中析构函数和封装
  • Spring Boot框架
  • VMware异常记录
  • 【踩坑】修复Idea升级后无法正常使用,报错 java.lang.ClassNotFoundException: com.liceb.b.Z@
  • MySQL InnoDB事务状态详解:information_schema.innodb_trx表解析
  • Neo4j GDS-06-neo4j GDS 库中社区检测算法介绍
  • 克隆网站怎么做/广州seo网站推广
  • 做注册任务的网站有哪些/域名
  • 网站营销单页怎么做/杭州网站seo公司
  • 做电商网站/天津百度搜索网站排名
  • 提供邯郸手机网站建设/优化网站排名茂名厂商
  • 做网站布局的时候需要把导航复制到每个页面吗/在哪里可以发布自己的广告