上一篇 <<<GC常用日志參數(shù)配置及分析工具說明
下一篇 >>>JVM性能調(diào)優(yōu)的評(píng)估指標(biāo)及調(diào)優(yōu)示例
什么是Full GC?minor GC? major GC? STW?
minor GC:新生代回收的gc( STW)
major GC:老年代回收的GC
Full GC:minor GC+major GC
STW:stop the world
Minor GC和Full GC區(qū)別
新生代GC(MinorGC):Eden代滿就會(huì)觸發(fā)(Survivor滿不會(huì)引發(fā)GC),非常頻繁,一般回收速度也比較快。
老年代GC(MajorGC/Full GC):MajorGC通常是跟fullGC是等價(jià)的,收集整個(gè)GC堆,包括年輕代、年老代和方法區(qū)。出現(xiàn)了Major GC經(jīng)常但不是必然會(huì)伴隨至少一次的Minor GC。MajorGC的速度一般會(huì)比MinorGC慢10倍以上。
觸發(fā)機(jī)制:年老代和永久代滿了
Full gc觸發(fā)條件
老年代是會(huì)變的,所以不會(huì)滿就會(huì)回收,68%的時(shí)候采用我們的CMS回收,java8是默認(rèn)92%。
JVM的永久代(方法區(qū))中會(huì)發(fā)生垃圾回收么
垃圾回收不會(huì)主動(dòng)發(fā)生在永久代,但如果永久代滿了或者是超過了臨界值,會(huì)觸發(fā)完全垃圾回收(Full GC)。
如果你仔細(xì)查看垃圾收集器的輸出信息,就會(huì)發(fā)現(xiàn)永久代也是被回收的。這就是為什么正確的永久代大小對(duì)避免Full GC是非常重要的原因。
相關(guān)文章鏈接:
<<<JVM整體內(nèi)存結(jié)構(gòu)的圖解,直觀明了
<<<javap命令查看對(duì)象信息及操作方法在JVM層的實(shí)現(xiàn)原理
<<<javap命令反查匯編指令匯總
<<<ClassLoader類加載器順序Demo測(cè)試與雙親委派源碼解讀
<<<自定義SPI和熱部署技術(shù)破壞類加載器的雙親委派模式
<<<JVM中對(duì)象如何完成空間分配和初始化工作
<<<JVM元空間(方法區(qū))和棧內(nèi)存溢出原因及解決方案
<<<JVM堆內(nèi)存溢出和內(nèi)存泄露問題定位和解決
<<<JVM常見死鎖問題產(chǎn)生原因和多種診斷方式
<<<服務(wù)器CPU飆升為100%問題排查及如何避免
<<<JVM內(nèi)存診斷命令和排查工具匯總
<<<JVM新生代老年代算法匯總圖解
<<<JVM垃圾回收不要手動(dòng)System.gc的真正原因
<<<JVM垃圾回收引用計(jì)數(shù)法和根搜索算法圖解
<<<JVM垃圾回收STW(Stop-The-World)代碼演示
<<<JVM垃圾回收器的發(fā)展歷程及使用場(chǎng)景匯總
<<<JVM串行并行垃圾回收器的關(guān)注點(diǎn)
<<<一張圖看懂CMS垃圾回收器的底層原理
<<<G1能作為JDK9默認(rèn)垃圾回收器的優(yōu)勢(shì)分析
<<<CMS和G1的漏標(biāo)問題解決及三色標(biāo)記算法圖解
<<<GC中新生代進(jìn)入老年代的方式匯總
<<<GC常用日志參數(shù)配置及分析工具說明
<<<JVM性能調(diào)優(yōu)的評(píng)估指標(biāo)及調(diào)優(yōu)示例