【问题标题】:Unable to increase heap size for JMeter on Mac OSX无法在 Mac OSX 上增加 JMeter 的堆大小
【发布时间】:2014-11-16 14:10:31
【问题描述】:

有没有办法在 Mac OSX 中增加 JMeter 的堆大小?我曾尝试编辑 jmeter.bat 文件,但没有帮助。

我编辑了jmeter.sh 文件以添加JVM_ARGS="-Xms3072m -Xmx3072m" jmeter.sh

我也尝试了以下

#!/bin/bash

heap_size='3072m'
JAVA_CMD="java -Xms$heap_size -Xmx$heap_size" meter`

如此链接中的建议increase the memory allocated to jmeter in ubuntu linux

有没有人知道如何在 Mac OSX 中做到这一点。我的java版本如下:

java version 1.6.0_65
Java(TM) SE Runtime Environment (build 1.6.0_65-b14-462-11M4609)
Java HotSpot(TM) 64-Bit Server VM (build 20.65-b04-462, mixed mode)`

在 OSX 10.9.4 上

【问题讨论】:

    标签: java macos jmeter heap-memory


    【解决方案1】:

    根据JMeter Performance and Tuning Tips

    默认 JMeter java 配置带有 512 Mo 和很少的 GC 调整。 首先确保您将 -Xmx 选项值设置为与您的测试要求相关的合理值。 然后更改 jmeter 文件中的 MaxNewSize 选项以尊重 MaxNewSize 和 -Xmx 之间的原始比例。

    可以在jmeter 脚本文件中调整Java 虚拟机参数,该脚本文件位于JMeter 安装的/bin 文件夹下。所以

    1. 使用您选择的文本编辑器打开 jmeter 脚本
    2. 寻找HEAP="-Xms512m -Xmx512m"这一行
    3. 根据您的需要更改最小值和最大值
    4. 保存文件并确保您正在执行jmeter,而不是jmeter.sh

    如果您正在寻找一次性的命令行 JVM 参数覆盖,您可以直接调用 JMeter 主 jar,而无需任何 shell 脚本包装器

    java -Xms1G -Xmx3G -jar ApacheJMeter.jar
    

    上面的命令假定您从 JMeter 安装的 /bin 文件夹中调用它。

    【讨论】:

    • 感谢它确实提高了 Jmeter 的性能,但在活动监视器上使用的内存似乎仍高达 800MB。仍然抛出内存不足错误。我是 Jmeter 的新手,所以请建议 - 如果我分配 java -Xms2G -Xmx4G -jar ApacheJMeter.jar 即为具有 16G 内存/四核 proc 的系统的最大 4G 内存,那么每秒 5 个请求对于总共 10,000 个请求是否太多。谢谢!
    • 更新你的 JRE 到 1.7.,这应该可以解决问题。
    • @JmeterPerfTest 感谢我将 java 升级到 1.8,并且在活动监视器上正在使用或似乎正在使用的内存现在高达 1.5 GB,即使我已将最小值设置为 2GB,最大值设置为 4GB。我仍然可以运行的最大测试似乎是一次 2000 个请求@每秒 5 个请求,以避免内存不足错误。
    • 您能否提供一些有关您正在测试的场景的详细信息。
    • @JmeterPerfTest 嘿,我想我错过了你的评论。让我知道你需要什么细节。我正在测试执行数据库事务的 Web 服务。我观察到我只能使用单个 jmeter 安装最多运行 2000 个用户,以避免内存不足错误。否则,根据要求,jmeter 服务会根据需要使用内存 ~ 高达 1.5G 到 3G,正如我所见。每秒的请求数取决于我的网络服务在开始拒绝连接之前可以承受多少负载。
    猜你喜欢
    • 1970-01-01
    • 2012-09-20
    • 2019-03-05
    • 1970-01-01
    • 2011-07-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-06-17
    相关资源
    最近更新 更多