50人以上のユーザーでjMeterを実行しようとすると、OutOfMemoryErrorが発生します。
2013/12/18 13:35:15 ERROR - jmeter.threads.JMeterThread: Error processing Assertion Java.lang.OutOfMemoryError: Java heap space
2013/12/18 13:35:15 ERROR - jmeter.threads.JMeterThread: Error processing Assertion Java.lang.OutOfMemoryError: Java heap space
2013/12/18 13:35:15 ERROR - jmeter.threads.JMeterThread: Error processing Assertion Java.lang.OutOfMemoryError: Java heap space
2013/12/18 13:35:15 ERROR - jmeter.threads.JMeterThread: Error processing Assertion Java.lang.OutOfMemoryError: Java heap space
2013/12/18 13:35:16 ERROR - jmeter.threads.JMeterThread: Test failed! Java.lang.OutOfMemoryError: Java heap space
2013/12/18 13:35:17 ERROR - jmeter.threads.JMeterThread: Test failed!
ヒープサイズを大きくしようとしましたが、それでも同じエラーが発生しました。
すべてのリスナーを削除しようとしても、何も変わりませんでした。
Javaヒープスペース。不足しているように見えます。デフォルトではJMeterはヒープ割り当てが非常に少ないため、これは正常です。-Xmx
パラメータで制御可能です。
jmeter.bat
またはjmeter.sh
スクリプトには、JMeterを次のように起動することを推奨する行があります。
JVM_ARGS="-Xms512m -Xmx512m" jmeter.sh
これらのエラーの受信を停止するまで、最大ヒープを増やしてみてください。ハードウェアRAMの80%などに設定することをお勧めします。
また、 JMeterパフォーマンスとチューニングのヒントの記事 を考慮して、メモリ消費リスナーを無効にし、オーバースクリプトしないで、ポストプロセッサを効率的に使用するなどしてください。
jmeter 3.xで。この問題を解決するには2つのステップがあります。
ステップ1、JMeterバッチファイルのJVMメモリを変更する
## ==============================================
## Environment variables:
## JVM_ARGS - optional Java args, e.g. -Dprop=val
##
## e.g.
## JVM_ARGS="-Xms512m -Xmx512m" jmeter etc.
##
## ==============================================
これは、環境に応じたjmeter.shのデフォルト値です。
JVM_ARGS="-Xms512m -Xmx2048m"
jmeter.bat内:
set JVM_ARGS=-Xms512m -Xmx2048m
ステップ2、JMeterバッチファイルのHEAP = "-Xms512m -Xmx512m"を変更するには:
jmeter.shで
HEAP="-Xms512m -Xmx2048m"
jmeter.bat内:
set HEAP=-Xms512m -Xmx2048m
Windowsではbin/jmeter.batを、Linuxではbin/jmeter.shを開き、次の行を見つけます。
set HEAP=-Xms512m -Xmx512m
この変数は、起動時に引数としてjmeterに渡されます。次のようにデフォルトのヒープサイズを増やします。
set HEAP=-Xms1024m -Xmx1024m
使用可能なスペースがあり、jmeterがさらに必要な場合は、スペースを追加できます。お役に立てば幸いです。
JMeterが大量のメモリを消費する理由は多くあります。
ヒープの調整は、これらの問題を修正する1つの方法にすぎません。
JVM_ARGS="-Xms512m -Xmx512m" jmeter.sh
チェックアウト JMeter Out Of Memory:12 Ways to Fix Them to more morevaluable tips。
Macでのこの1つのライナー(jmeterはこの場合はbashスクリプトです):
$ JVM_ARGS = "-Xms4g -Xmx4g -XX:NewSize = 4g -XX:MaxNewSize = 4g" && export JVM_ARGS && jmeter
また、テスト非GUIモードの実行を常に検討する必要があります。