- マイナーGC
- メジャーGC
- Eden領域
- これからはG1GC
- 8G使わないならconcurrent mark sweep
- スレッドスタック(再帰処理で使う)
- visualvm
目的: 利用傾向を掴む
- oldが肥大化し続けていないか
- FullGCが発生しているか
- stringがmemory2Gとかだとなんかおかしいとか
- GCログ
- イベントフックでアラートなど
比較的メモリをきにしなければ行けないサーバーで, FullGCがおきないようにしたい
(FullGC=プログラム停止)
-
ヒープ設定
- マシンの50%ぐらい割り当ててOK
- ただし12Gまで
- マシンの50%ぐらい割り当ててOK
-
G1GC
- 8G以上ならこのGC一択
-
なるべくOld領域に移動させない
- New領域のサイズ指定
- 40〜50%ぐらい割り当てる
- New領域のサイズ指定
-
Old領域のチューニング
- 早めのGCが必要
- 70%使用したらoldGC
- 早めのGCが必要