Java核心技术系列新一代垃圾回收器ZGC设计与实现
本书特色
[
Java 11版本包含一个全新的垃圾收集器ZGC,它由Oracle开发,承诺在数TB的堆上具有非常低的暂停时间。ZGC是2017年Oracle公司贡献给OpenJDK社区的,正式成为OpenJDK的开源项目。ZGC 所针对的是这些在未来普遍存在的大容量内存:TB 级别的堆容量,具有很低的停顿时间(小于 10 毫秒),对整体应用性能的影响也很小(对吞吐量的影响低于 15%)。ZGC 所采用的机制也可以在未来进行扩展,以支持一些令人兴奋的特性,如多层堆(用于热对象的 DRAM 和用于低频访问对象的 NVMe 闪存)
或压缩堆。
本书详细介绍ZGC涉及的基本概念和运行原理,以及调优方法。主要内容共9章,主要
内容有:垃圾回收器概述、ZGC内存管理、ZGC线程、ZGC垃圾回收算法的设计、ZGC日
志解读、ZGC参数和基准测试、ZGC的编译调试、ZGC特性总结和展望、ZGC的编译调试、Shenandoah简介等。
]
内容简介
[
Java 11版本包含一个全新的垃圾收集器ZGC,它由Oracle开发,承诺在数TB的堆上具有很好低的暂停时间。ZGC是2017年Oracle公司贡献给OpenJDK社区的,正式成为OpenJDK的开源项目。ZGC 所针对的是这些在未来普遍存在的大容量内存:TB 级别的堆容量,具有很低的停顿时间(小于 10 毫秒),对整体应用性能的影响也很小(对吞吐量的影响低于 15%)。ZGC 所采用的机制也可以在未来进行扩展,以支持一些令人兴奋的特性,如多层堆(用于热对象的 DRAM 和用于低频访问对象的 NVMe 闪存)或压缩堆。本书详细介绍ZGC涉及的基本概念和运行原理,以及调优方法。主要内容共9章,主要内容有:垃圾回收器概述、ZGC内存管理、ZGC线程、ZGC垃圾回收算法的设计、ZGC日志解读、ZGC参数和基准测试、ZGC的编译调试、ZGC特性总结和展望、ZGC的编译调试、Shenandoah简介等。
]
作者简介
[
彭成寒 高级Java工程师,目前主要从事风控系统设计、算法建模、大数据处理等工作,有超过10年的Java和C 开发经验。
]
目录
前言第1章 垃圾回收器概述 11.1 垃圾回收算法 21.2 JVM垃圾回收器 21.2.1 串行回收 31.2.2 并行回收 41.2.3 CMS 41.2.4 G1 51.2.5 ZGC 151.2.6 Shenandoah 19第2章 ZGC内存管理 212.1 操作系统地址管理 212.2 ZGC内存管理 222.2.1 多视图映射 252.2.2 ZGC多视图映射 272.2.3 页面设计 302.2.4 对NUMA的支持 312.2.5 ZGC中的物理内存管理 322.2.6 ZGC中的虚拟内存管理 342.2.7 ZGC内存预分配 352.3 ZGC对象分配管理 362.3.1 对象空间分配 392.3.2 页面分配 42第3章 ZGC线程 483.1 线程的基本概念 483.2 控制线程 493.2.1 时钟触发器 513.2.2 消息触发 533.2.3 VMThread 563.3 工作线程 593.4 垃圾回收触发的时机 62第4章 ZGC垃圾回收算法的设计 674.1 并发垃圾回收算法 674.1.1 并发垃圾回收算法概述 674.1.2 ZGC并发算法的设计 684.2 并发处理 704.2.1 并发处理概述 714.2.2 ZGC并发处理算法 734.2.3 ZGC并发处理算法演示 75第5章 ZGC垃圾回收算法的实现 785.1 垃圾回收的实现 785.1.1 初始标记 785.1.2 并发标记 885.1.3 再标记和非强根并行标记 945.1.4 非强引用并发标记和引用并发处理 985.1.5 重置转移集 1055.1.6 回收无效的页面 1065.1.7 选择待回收的页面 1065.1.8 初始化待转移集合的转移表 1085.1.9 初始转移 1085.1.10 并发转移 1105.1.11 垃圾回收算法再讨论 1115.2 垃圾回收算法演示 112第6章 ZGC日志解读 1206.1 Xlog简介 1206.2 测试用例设计 1236.3 ZGC初始化信息 1256.4 垃圾回收触发信息 1276.5 垃圾回收过程中每一步的信息 1306.6 统计信息 1376.6.1 垃圾回收器信息 1376.6.2 竞争信息 1376.6.3 同步等待信息 1396.6.4 内存信息 1406.6.5 垃圾回收步骤信息 1426.6.6 子阶段信息 1446.6.7 线程信息 146第7章 ZGC参数和基准测试 1477.1 参数简介 1477.1.1 ZGC新引入参数 1477.1.2 GC通用参数 1497.2 测试评估 1507.2.1 测试准备 1517.2.2 测试与测试报告 154第8章 ZGC的发展与展望 1608.1 类回收 1618.2 单代回收 1648.3 新功能和多平台 165第9章 JVM编译调试 1669.1 下载源代码 1669.2 代码概览 1679.3 编译JVM 1689.4 调试ZGC 1699.4.1 启动GDB 1709.4.2 对象分配 1709.4.3 触发垃圾回收 1729.4.4 初始标记 1729.4.5 并发标记 1739.4.6 初始转移 1749.4.7 并发转移 1769.4.8 重定位 1769.5 使用HSDB学习JVM中对象布局 1789.5.1 C 对象布局原理 1789.5.2 Java对象布局原理 1809.5.3 用HSDB分析Java对象布局 180第10章 Shenandoah简介 19210.1 概述 19210.2 Shenandoah垃圾回收策略 19310.3 Shenandoah垃圾回收算法 19410.3.1 正常回收算法 19510.3.2 遍历回收算法 197附录A Cassandra简介 200附录B YCSB简介 202
封面
书名:Java核心技术系列新一代垃圾回收器ZGC设计与实现
作者:彭成寒
页数:212
定价:¥89.0
出版社:机械工业出版社
出版日期:2018-04-01
ISBN:9787111633655
PDF电子书大小:54MB 高清扫描完整版
本文标题:《Java核心技术系列新一代垃圾回收器ZGC设计与实现》PDF下载
资源仅供学习参考,禁止用于商业用途,请在下载后24小时内删除!