《Java性能调优指南》是一本非常实用的书籍,它将Java技术与系统性能调优相结合,为读者提供了一些非常有用的技巧和方法,可以帮助开发者充分利用多核硬件和复杂操作系统环境,提高Java程序的性能。该书涵盖了Java虚拟机、垃圾回收器、线程调度、IO操作等多个方面,易于理解,读者可以快速掌握并应用到工作中。如果你是一位Java开发者,务必不要错过这本书。
性能调优就靠这本啦,里面介绍了很多调优建议。
书虽然很薄,但是讲的很精辟,结合《Java性能调优指南》,感觉对Java的理解又更深了!
不要被书名误导,其实讲的是gc1以及gc调优。可惜书跟很薄,很多东西没有展开来讲。翻译还可以,语录基本通顺。
编辑推荐
该书的作者是Java性能和Java HotSpot虚拟机领域的专家。书中介绍了如何利用现代软件工程实践提高性能,避免常见错误,总结实战经验中的技巧和诀窍。
书中详细介绍了如何利用G1 GC来克服并行,串行和CMS垃圾收集器的局限性。对G1 GC收集的各个阶段,包括年轻代和老年代,在G1的引擎下进行微调,以确定潜在优化方案。同时,书中还解释了实验结果,并提供了付诸行动的具体指导。
此外,书中还介绍了如何使用热点VM服务代理进行HotSpot虚拟机内部的分析和分流,并解决不同的热点。读者可通过探索书中提供的知识,深入了解Java性能和虚拟机工作原理,并提高应用程序的性能。
内容介绍
本书主要介绍如何在当今复杂的多核硬件和操作系统环境下,主动提高Java性能。它是基于Charlie Hunt和Binu John的经典著作《Java Performance》的延伸,并提供了两个前所未有的、强大的Java平台创新细节:Garbage First(G1)垃圾收集器和HotSpot虚拟机服务代理。通过阅读本书,你可以在任何环境中发挥Java的最佳性能,尤其是在JDK8或9中。
目录
- 前言 VII
- 致谢 IX
- 作者介绍 XII
- 第1章 Garbage First综述 1
- 术语 1
- 并行垃圾收集器 2
- 串行垃圾收集器 4
- 并发标记清除(CMS)垃圾收集器 5
- 收集器的概括总结 7
- Garbage First(G1)垃圾收集器 8
- G1设计 10
- 巨型(Humongous)对象 12
- Full垃圾收集 12
- 并发周期 13
- 堆空间调整 13
- 引用 14
- 第2章 深入Garbage First垃圾收集器 15
- 背景 15
- G1中的垃圾收集 16
- 年轻代 17
- 年轻代收集暂停 18
- 对象老化与老年代 19
- 巨型分区 19
- 混合收集 22
- 收集集合及其重要性 24
- 已记忆集合及其重要性 24
- 并发优化线程以及栅栏 28
- G1 GC的并发标记 30
- 并发标记阶段 34
- 初始标记 34
- 根分区扫描 34
- 并发标记 34
- 重新标记 36
- 清除 36
- 转移失败与Full收集 37
- 引用 38
- 第3章 Garbage First垃圾收集器性能优化 39
- 年轻代收集的各阶段 39
- 所有并行活动的开始 41
- 外部根分区 42
- 已记忆集合和已处理缓冲区 42
- 已记忆集合总结 44
- 转移和回收 47
- 终止 47
- GC外部的并行活动 48
- 所有并行活动总结 48
- 所有串行活动的启动 48
- 其他串行活动 49
- 年轻代调优 50
- 并发标记阶段调优 52
- 混合垃圾收集阶段回顾 54
- 混合垃圾收集阶段调优 56
- 避免转移失败 59
- 引用处理 60
- 观察引用处理 60
- 引用处理调优 62
- 引用 65
- 第4章 The Serviceability Agent 67
- SA是什么 67
- 为什么要用SA 68
- SA组件 68
- JDK中的SA二进制文件 69
- SA的JDK版本说明 69
- SA如何获得Hotspot虚拟机的内部数据结构 70
- SA版本对照 71
- SA调试工具 72
- HSDB 72
- HSDB工具 80
- 命令行Hotspot调试器CLHSDB 100
- 其他工具 103
- CoreDump和崩溃Dump文件 109
- 调试非本地生成的Core文件 109
- SA的共享库问题 110
- 消除共享库问题 110
- SA的系统属性 111
- SA的环境变量 113
- JDI实现 114
- 扩展SA工具 115
- VisualVM的SA插件 118
- VisualVM中怎样安装SA插件 119
- SA插件使用 119
- SA插件功能 120
- 用SA做故障分析 124
- 内存溢出错误分析 124
- 诊断语言层死锁 132
- 事后分析Hotspot虚拟机崩溃 137
- 附录 虚拟机命令行附加参数探秘 145
- 索引 155