改变Jmeter堆大小的最好方法是什么?它给出:OutOfMemoryError

ljo96ir5  于 2023-06-06  发布在  其他
关注(0)|答案(2)|浏览(291)

我试图改变我的jmeter(版本4)堆大小的大小从set HEAP=-Xms 1g-Xmx 1g-XX:MaxMetaspaceSize= 256 m到更多,因为我有64位,16 GB RAM的系统,但无法改变它。
我试过很多方法但都不管用。
这里有谁能帮我解决这个问题吗?
提前感谢!!

gajydyqb

gajydyqb1#

JMeter版本4默认分配了1 GB的HEAP***,您可以修改它,如:

set HEAP=-Xms1G -Xmx10G && jmeter.bat

您还可以在 * jmeter.bat * 文件中找到以下行:

set HEAP=-Xms1g -Xmx1g -XX:MaxMetaspaceSize=256m

并根据您的要求修改此-Xmx1g。不要分配太多的堆,因为它可能会让事情变得更糟,不要设置太低,因为garbage collection会减慢测试速度。您可以使用以下命令检查堆状态和其他VM指标:JVisualVM tool
更多信息:

vdzxcuhz

vdzxcuhz2#

1.转到JMeter的bin文件夹apache-jmeter- -> bin
1.右键单击并在记事本或记事本++(具有管理员权限)中打开jmeter.bat文件
1.搜索关键字'set Heap'您可以看到默认堆大小(1 GB -可能因JMeter版本而异)

set HEAP=-Xms1g -Xmx1g -XX:MaxMetaspaceSize=256m

1.更改-Xms(初始堆大小)和-Xmx(最大堆大小)值。

set HEAP=-Xms1g -Xmx2g -XX:MaxMetaspaceSize=256m

1.保存更改并重新启动JMeter

如何验证已应用的更改?

1.启动JMeter的新示例
1.添加“线程组”
1.在“线程组”下添加“JSR 223示例”
1.将下面的代码粘贴到“脚本”部分

java.lang.management.ManagementFactory.getRuntimeMXBean().getInputArguments().each {
      log.info("Effective JVM argument: " + "$it")
}

1.运行测试
1.单击右上角的黄色三角形,检查日志中的JVM参数值。

相关问题