2

Tomcat サーバーを監視していますが、コミット済みヒープ メモリが最大ヒープ メモリに達するたびに、Tomcat がクラッシュするか、OOM エラーが発生することがわかりましたが、同時にヒープ使用メモリが通常の使用量を下回っています。コミットされたものと、ヒープの使用中にクラッシュするのが正常な理由を説明できる人がいますか。

次のグラフを参照してください。

ここに画像の説明を入力

4

1 に答える 1

9

コミットされたスペースは、仮想ではないスペースです。つまり、JVM の特定のパーティションに静的に割り当てられるスペースです。オプションのサイジング スイッチ -Xms および -Xmx を使用すると、すべてが最初にメモリの特定のパーティションにコミットされるわけではありません。世代を拡張する必要があるため、「仮想」空間に成長することが許可されています。

あなたのチャートは、物事がどのように機能するべきかのように見えます。使用済みスペースがコミット済みに向けて拡大するにつれて、コミット済みスペースは最大に向けて拡大します。コミットされた最大サイズに達すると、行き場がなくなります。最後の溝GCでそれ自体を保存できない場合、JVMはダウンします。

于 2012-04-27T21:05:33.587 に答える