Slide 8
Slide 8 text
© 2024 Loglass Inc. 8
01|OOMの理解と事例
JVMにおけるメモリ管理
Eden空間 Survivor空間 Tenured空間
ヒープ メモリ
クラスのすべてのインスタンスと配列はヒープメモリに格納される
Young世代 Old世代
非ヒープ メモリ
メタスペースと呼ばれる、クラス定義などのメタデータや
コードキャッシュ(コンパイルされたネイティブコード)などが格納される
ガベージコレクション(GC)
不要となったオブジェクトを解放し、メモリを再利用可能にする
● Minor GC
Young世代の無効なオブジェクトを削除し、有効なオブジェクト
はEdenからSurvivor空間へ
● Full GC (Major GC)
ヒープ全体のガベージコレクションが実施され、メタスペースやダ
イレクトメモリなどの領域も解放される
※参考:
https://learn.microsoft.com/ja-jp/azure/spring-apps/basic-stan
dard/concepts-for-java-memory-management
ダイレクト メモリ
nioやgzipなどのサードパーティのライブラリで使用される