书籍详情
深入浅出Java虚拟机:JVM原理与实战
作者:李博
出版社:北京大学出版社
出版时间:2023-06-01
ISBN:9787301337752
定价:¥69.00
购买这本书可以去
内容简介
《深入浅出Java虚拟机:JVM原理与实战》主要以 Java 虚拟机的基本特性及运行原理为中心,深入浅出地分析 JVM 的组成结构和底层实现,介绍了很多性能调优的方案和工具的使用方法。后还扩展介绍了 JMM 内存模型的实现原理和 Java 编译器的优化机制,让读者不仅可以学习 JVM 的核心技术知识,还能夯实 JVM 调优及代码优化的技术功底。《深入浅出Java虚拟机:JVM原理与实战》适合已具有一定 Java 编程基础的开发人员、项目经理、架构师及性能调优工程师参考阅读,同时,《深入浅出Java虚拟机:JVM原理与实战》还可以作为广大职业院校、计算机培训班相关专业的教学参考用书。
作者简介
李博,资深架构师,InfoQ平台、阿里云社区专家博主,CSDN博客专家,51CTO讲师,慕课网讲师,Quarkus技术社区的热衷参与者,参与过多个开源项目(Skywalking、Nacos、Pulsar等)的开发和深入研究。目前担任公司内部架构委员会副主席,主要研究方向是“基于Quarkus的云原生Java微服务架构的推进”和“GraalVM虚拟机的内部化落地”。
目录
第1章?Java语言的起源 7
1.1?Java发展的艰辛历程 8
1.2?Java散发的独特魅力 10
1.3?网络时代带来的挑战 12
1.4?Java生态的体系结构 14
1.5?JVM的进化发展史 17
1.6?小结 19
第2章?初次接触JVM 20
2.1?通过Oracle JDK搭建运行环境 21
2.2?通过Open JDK搭建运行环境 29
2.3?Open JDK和Oracle JDK的关系 35
2.4?小结 36
第3章?迈向JVM的步 38
3.1?JVM内部七大“首脑” 39
3.2?JVM外部有利“辅助” 43
3.3?JVM内部对象的探索发掘 47
3.4?JVM的OOM异常 51
3.5?JVM的总体内存结构分布 54
3.6?小结 55
第4章?开始认识类加载系统 56
4.1?类加载系统的整体生命周期和流程 57
4.2?类加载系统为我们带来了什么 63
4.3?Class字节码的组成 70
4.4?小结 80
第5章?进入虚拟机核心世界 81
5.1?堆内存的“管辖范围” 82
5.2?内存管理系统回收垃圾 86
5.3?垃圾回收的类型 98
5.4?方法区 101
5.5?执行引擎子系统 105
5.6?对象描点标记的方法 107
5.7?对象描点标记的方法 110
5.8?小结 113
第6章?永远线程安全的区域 114
6.1?虚拟机栈和PC寄存器 115
6.2?虚拟机执行机制介绍 118
6.3?小结 122
第7章?虚拟机字节码指令集 123
7.1?字节码指令概述 124
7.2?字节码指令执行案例分析 134
7.3?小结 137
第8章?JVM深入分析运作原理 138
8.1?内存分配及回收的依据 139
8.2?内存分配及回收的策略 143
8.3?小结 146
第9章?JVM分析工具大全 147
9.1?JVM分析工具概述 148
9.2?常用JVM图形化分析工具概述 159
9.3?JVM在线性能分析服务 166
9.4?小结 172
第10章?Arthas分析JVM问题定位 173
10.1?Arthas学习指南 174
10.2?Arthas分析OOM问题定位 182
10.3?Arthas分析FullGC问题定位 185
10.4?Arthas分析线程方面问题定位 187
10.5?小结 190
第11章?程序的编译和代码优化 191
11.1?Java体系的3种编译器 192
11.2?JIT编译器 194
11.3?AOT编译器 199
11.4?编译技术的优化 200
11.5?逃逸分析技术 207
11.6?小结 212
第12章?Java内存模型和线程运作原理 213
12.1?Java内存模型 214
12.2?线程实现 223
12.3?线程安全控制 227
12.4?线程的锁优化 228
12.5?小结 231
1.1?Java发展的艰辛历程 8
1.2?Java散发的独特魅力 10
1.3?网络时代带来的挑战 12
1.4?Java生态的体系结构 14
1.5?JVM的进化发展史 17
1.6?小结 19
第2章?初次接触JVM 20
2.1?通过Oracle JDK搭建运行环境 21
2.2?通过Open JDK搭建运行环境 29
2.3?Open JDK和Oracle JDK的关系 35
2.4?小结 36
第3章?迈向JVM的步 38
3.1?JVM内部七大“首脑” 39
3.2?JVM外部有利“辅助” 43
3.3?JVM内部对象的探索发掘 47
3.4?JVM的OOM异常 51
3.5?JVM的总体内存结构分布 54
3.6?小结 55
第4章?开始认识类加载系统 56
4.1?类加载系统的整体生命周期和流程 57
4.2?类加载系统为我们带来了什么 63
4.3?Class字节码的组成 70
4.4?小结 80
第5章?进入虚拟机核心世界 81
5.1?堆内存的“管辖范围” 82
5.2?内存管理系统回收垃圾 86
5.3?垃圾回收的类型 98
5.4?方法区 101
5.5?执行引擎子系统 105
5.6?对象描点标记的方法 107
5.7?对象描点标记的方法 110
5.8?小结 113
第6章?永远线程安全的区域 114
6.1?虚拟机栈和PC寄存器 115
6.2?虚拟机执行机制介绍 118
6.3?小结 122
第7章?虚拟机字节码指令集 123
7.1?字节码指令概述 124
7.2?字节码指令执行案例分析 134
7.3?小结 137
第8章?JVM深入分析运作原理 138
8.1?内存分配及回收的依据 139
8.2?内存分配及回收的策略 143
8.3?小结 146
第9章?JVM分析工具大全 147
9.1?JVM分析工具概述 148
9.2?常用JVM图形化分析工具概述 159
9.3?JVM在线性能分析服务 166
9.4?小结 172
第10章?Arthas分析JVM问题定位 173
10.1?Arthas学习指南 174
10.2?Arthas分析OOM问题定位 182
10.3?Arthas分析FullGC问题定位 185
10.4?Arthas分析线程方面问题定位 187
10.5?小结 190
第11章?程序的编译和代码优化 191
11.1?Java体系的3种编译器 192
11.2?JIT编译器 194
11.3?AOT编译器 199
11.4?编译技术的优化 200
11.5?逃逸分析技术 207
11.6?小结 212
第12章?Java内存模型和线程运作原理 213
12.1?Java内存模型 214
12.2?线程实现 223
12.3?线程安全控制 227
12.4?线程的锁优化 228
12.5?小结 231
猜您喜欢