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

官方指定Jmeter配置JVM堆内存方式

1.概述

在使用Jmeter做性能测试过程中,可能会应为默认设置的堆内存值较小出现堆内存溢出问题,此时解决的方式有两种,分布式测试和调大堆内存。下面介绍官方推荐调整堆内存方法。

2.调整Jmeter堆内存

2.1.介绍官方推荐堆内存调整方法(jmeter在windows环境运行配置方式)

了解Jmeter最便捷的方式就是看官方文档,它提供了全方位的Jmeter介绍。如果没有阅读官方文档的习惯可能会走一些弯路,因此推荐一条好走的路。

官方文档地址:https://jmeter.apache.org/usermanual/get-started.html

1.Jmeter使用手册展示

2.带你从手册查找JVM正确的配置方式

点击Getting Started打开手册

在1.4章节Running Jmeter中官方介绍了配置环境变量的方式,就是在Jmeter的bin目录下新建一个setenv.bat文件,官方还给出了在文件中配置JVM参数的例子。

为什么网上提供的jmeter.bat文件修改jvm参数不生效那?官网也给出了答案。

原因是优先级顺序,setenv.bat文件配置会覆盖jmeter.bat配置内容。

2.2.介绍官方推荐堆内存调整方法(jmeter在linux环境运行配置方式)

1.linux和windows配置jvm区别

linux环境配置Jmeter的JVM参数和window环境配置原理一样,只有两点区别

Linux环境创建的setenv脚本文件后缀不是bat,是sh。(setenv.sh)

setenv.sh脚本文件语法格式稍有区别。window解析bat文件使用set语法设置变量,linux解析shell语言使用export设置变量。

2.官方提供的linux环境配置jvm方法

继续阅读官方手册1.4 Running JMeter章节,官方文档指出在bin目录中创建setenv.sh文件,并在该文件中配置jvm,所配置的内容将在Jmeter启动时候被jmeter脚本文件读取。

2.3.Jmeter配置JVM总结

1.windows配置jvm两种方式

在jmeter.bat文件中修改jvm参数,如下图。

在bin目录创建setenv.bat文件修改jvm参数,它的优先级高于jmeter.bat会覆盖该文件内容。

2.Linux环境配置jvm参数两种方式

在jmeter没有后缀的文件中配置jvm参数

jmeter配置jvm脚本

在bin目录下新建setenv.sh文件配置jvm参数,它的优先级高于jmeter脚本,覆盖该脚本参数。

3.配置jvm参数实例

3.1.Windows环境调整堆内存(jmeter.bat方式)

1.在jmeter.bat文件配置jvm参数

2.启动Jmeter验证jvm配置

使用Java VisualVM工具查看Jmeter设置的堆内存结果。

3.2.Windows环境调整堆内存(setenv.bat方式)

1.setenv.bat文件配置jvm

在bin目录下新建setenv.bat文件,在文件中配置JVM参数

rem This is the content of bin\setenv.bat,

rem it will be called by bin\jmeter.bat

set JVM_ARGS=-Xms256m -Xmx256m -XX:MaxMetaspaceSize=256m

2.启动Jmeter验证jvm配置

使用Java VisualVM工具查看Jmeter设置的堆内存结果。

3.3.Linux环境调整堆内存

1.创建setenv.sh文件

在jmeter的bin目录下新建setenv.sh配置文件,在文件中配置jvm参数

export JVM_ARGS="-Xms256m -Xmx256m -XX:MaxMetaspaceSize=256m"

2.启动jmeter脚本查看jvm参数

命令方式启动jmeter脚本

// jmeter命令调用的就是bin目录下的jmeter脚本文件,因此他会在启动时读取setenv.sh文件中jvm参数。

jmeter -n -t ./JmeterScript/LiveStreaming.jmx

查看Jmeter的jvm参数和设置值一致

感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:

这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你!有需要的小伙伴可以点击下方小卡片领取

http://www.jsqmd.com/news/249061/

相关文章:

  • AI 正在“吞噬”自己:Claude 编写了自身 90% 的代码,程序员真的要失业了吗?
  • 【某海关企业信息公示平台实战】突破动态防御与混淆加密:基于DrissionPage与OCR的混合采集方案深度剖析
  • 大模型完全解析:从小白到AI入门的必学知识体系
  • 收藏!4大主流AI智能体框架全解析:从选型到实战,小白/程序员入门大模型必备
  • 传统代码岗位正在缩水?一线大厂员工告诉你:给你一年时间,完成一场 AI 职业大迁徙
  • AI大模型学习路线:小白到专家的进阶指南,附免费资源_大模型AI产品经理学习路线解析
  • 想从 IT 技术岗转行网络安全?建议先看看这篇指南
  • 微服务架构的端到端测试实战指南‌‌
  • 机动车防撞击系统设计
  • 基于单片机的药品分拣设计
  • 2025大模型面试全攻略:三场面试真题详解,收藏不迷路
  • 如今的桌面运维,难道已经全员都跳出去发展了?
  • Harmony开发中考试组件库怎么使用
  • ‌IoT设备测试的硬件与软件集成实操指南
  • 潮玩抽赏小程序开发全解析:玩法落地+技术架构+合规防控
  • DevOps中的持续测试实施路径与效能提升
  • 基于单片机的红绿灯设计
  • Paperzz 开题报告|AI 赋能学术起点,一键开启你的论文高效创作之旅
  • [2-03-03].第02节:ES初识 - ElasticSearch概念
  • 基于单片机的防火防盗报警系统
  • 钉钉的AI赋能办公
  • Node.js用os.cpus()轻松获取CPU核心数
  • 【广东省高等教育学会人工智能与高等教育研究分会主办 | IEEE出版 | 往届已完成EI核心检索,快至会后3个月检索】第三届智慧城市与信息系统国际学术会议 (ICSCIS 2026)
  • 77.8分SOTA!Qwen3-VL多模态检索模型技术详解与实战应用
  • Android 基础入门教程2.5.5 ExpandableListView(可折叠列表)的基本使用
  • Android 基础入门教程2.5.7 Toast(吐司)的基本使用
  • 干货收藏!2026网络安全新机遇:AI技术引领高薪就业新时代
  • Android 基础入门教程2.5.6 ViewFlipper(翻转视图)的基本使用
  • pytest框架:mark标记功能
  • 新手必看!2026年这3张入门级网安证书,让你轻松踏入网络安安全行业