ARMS エージェントは約 100 GB のメモリを使用します。継続的プロファイリングなどの高度な機能により、オーバーヘッドがさらに増加します。アプリケーションをアプリケーションモニタリングに接続した後、OutOfMemoryError がスローされた場合は、エラーで報告されたメモリ領域の JVM メモリ割り当てを増やしてください。
スタックトレースまたはアプリケーションログからエラーの種類を特定し、該当する対処方法を適用します。
| エラー | 原因 | 修正 |
|---|---|---|
OutOfMemoryError: Java heap space | ヒープメモリが不足している | -Xms および -Xmx |
OutOfMemoryError: PermGen space | 永続的生成領域(PermGen space)が不足している(Java 7 以前) | -XX:PermSize および -XX:MaxPermSize |
OutOfMemoryError: Metaspace | メタスペースが不足している(Java 8 以降) | -XX:MetaspaceSize および -XX:MaxMetaspaceSize |
OutOfMemoryError: Java heap space
JVM のヒープメモリが不足しています。JVM の起動オプションに -Xms(初期値)および -Xmx(最大値)パラメーターを追加します:
-Xms1024M
-Xmx2048Mこの例では、初期ヒープサイズを 1 GB、最大ヒープサイズを 2 GB に設定しています。ご利用のアプリケーションのメモリ要件に応じて、これらの値を調整してください。
説明
Tomcat などの環境では、これらのパラメーターを構成ファイル内の JAVA_OPTS に追加します。
また、-XX:InitialHeapSize および -XX:MaxHeapSize を使用して、ヒープメモリをパーセンテージで指定することもできます。詳細については、「JDK ドキュメント」をご参照ください。
OutOfMemoryError: PermGen space
永続的生成領域(PermGen space)が枯渇しています。このエラーは Java 7 以前のバージョンに適用されます。PermGen の割り当て量を増加します:
-XX:PermSize=256M
-XX:MaxPermSize=512MOutOfMemoryError: Metaspace
メタスペースが枯渇しています。このエラーは Java 8 以降のバージョンに適用され、メタスペースが PermGen を置き換えています。メタスペースの割り当て量を増加します:
-XX:MetaspaceSize=256M
-XX:MaxMetaspaceSize=512M