Linux マシンの Tomcat サーバーで「OutOfMemoryError: GC オーバーヘッド制限を超えました」というメッセージが表示されます。Java アプリケーションのどのプログラムが多くのメモリを消費しているかを分析するのに役立つツールがあれば教えてください。Tomcat サーバーがこのエラーで失敗した場所を知るための情報を提供するデバッグ ツールはありますか?
前もって感謝します。
Linux マシンの Tomcat サーバーで「OutOfMemoryError: GC オーバーヘッド制限を超えました」というメッセージが表示されます。Java アプリケーションのどのプログラムが多くのメモリを消費しているかを分析するのに役立つツールがあれば教えてください。Tomcat サーバーがこのエラーで失敗した場所を知るための情報を提供するデバッグ ツールはありますか?
前もって感謝します。
コマンド ライン パラメータ -XX:+HeapDumpOnOutOfMemoryError を設定して、OOM でヒープダンプを作成してください。-XX:HeapDumpPath=<ヒープ ダンプのフォルダ> も役立ちます。
OOM が発生した場合、 MATでヒープ ダンプを分析できます。ヒープダンプを分析するための非常に便利なツールです。
また、jmapを使用して手動でヒープ ダンプを作成することもできます。例:jmap -dump:file=<output-filename> <java process id>