课程标题:ZGC收集器——突破停顿时间极限的下一代垃圾回收器(15分钟)
目标:掌握ZGC的核心技术原理、适用场景与调优策略,理解其如何实现亚毫秒级停顿
0-1分钟:课程引入与ZGC设计目标
以“高速公路无障碍通行”类比ZGC核心思想:通过染色指针与读屏障技术,实现垃圾回收全程并发,将STW(Stop-The-World)停顿时间压缩至10ms以内。ZGC(Z Garbage Collector)是JDK11引入的革命性收集器,专为TB级大堆内存设计,目标是在不影响吞吐量的前提下,彻底解决GC停顿对延迟敏感应用(如金融交易、实时分析)的影响。
1-3分钟:ZGC三大核心技术
- 染色指针(Colored Pointers):
- 原理:在64位指针中嵌入元数据(标记对象状态:存活、转移中、已转移等),替代传统对象头标记。
- 优势:GC状态与对象解耦,回收过程无需修改对象内存布局。
- 读屏障(Load Barrier):
- 作用:在读取对象引用时触发屏障逻辑,检查指针颜色并修正引用(如对象正在转移)。
- 代价:引入约1%~3%的运行时开销。
- 内存多重映射(Multi-Mapping):
- 机制:将同一物理内存映射到多个虚拟地址空间,支持并发转移对象。