こんにちは。カート決済部カート決済基盤ブロックの長沼です。先日Javaアプリケーションをリリースしたのですが、リリース後にOld領域のメモリ使用量がわずかに増加し続ける現象が発生しました。本記事ではこの現象の調査にて得られた知見を共有します。 本記事で共有すること 前提知識 JVM(Java Virtual Machine)とは ヒープ領域とは GC(ガベージ・コレクション)とは GCのアルゴリズム G1GC(ガベージファースト・ガベージ・コレクタ)とは G1GCのメモリ管理 ヒープ領域の概念図 世代別領域に対するGCの基本処理 Young GC 混合GC Full GC ソフト参照 Javaの参照 ソフト参照とGC まとめ 最後に 本記事で共有すること GCの概要を理解するための前提知識を説明した後、G1GC(ガベージファースト・ガベージ・コレクタ)がメモリをどのように扱うか説明します。

