JVM内存模型和性能调优:系列文章 - 导读
学习 Java 虚拟机能深入地理解 Java 这门语言,想要深入学习java的各种细节,很多时候你要深入到字节码层次去分析,你才能得到准确的结论,通过学习JVM你了解JVM历史,内存结构、垃圾回收机制、性能监控工具、认识类的结构体,Java的编译运行优化、字节码剖析等。
课程目标
本课程专门针对于JVM的执行流程、内存分配、垃圾收集等机制进行了综合讲解。
学习收获
1.JAVA工程师不可不知的内存模型,生动剖析线程栈和堆的新生代和老年代。
2.内功深厚招数才易懂垃圾回收算法,带你一步步解析GC垃圾回收算法和常用垃圾回收器的原理。
3. 简明扼要内存分配,JVM堆内存分配遵循哪些原则,什么是栈上分配?什么是逃逸分析?
4. 深入了解JVM虚拟机工作原理,揭秘Java核心知识
5.涵盖JVM所有知识点,性能调优、故障排除、内存模型、垃圾收集GC、字节码解析等等
适合人群
1.具备至少一个项目开发和上线经验的同学
2.想学习生产环境下应用监控与调优技术的同学
3.想提高解决生产环境的各种性能问题的能力的同学
4.正准备晋级Java中高级工程师的同学
课程目录
第一章 基础入门
0.课程总体介绍
1. 什么是Java虚拟机
2. 一图了解JVM核心组成
第二章 类加载机制深度剖析
3.类加载过程
4.深入理解加载和初始化
5.类加载器
6.自定义类加载器
7.双亲委派机制
8.打破双亲委派
9.打破双亲委派的实现
第三章 JVM内存模型深度剖析
10.JVM整体结构及内存模型
11.栈(线程)
12.栈大小分析
13.堆-栈-方法区的关系
14.解析-静态链接-动态链接
15.堆内存空间
16.堆内存空间-案例分析
17.Eden Survivor名称由来
18.JVM的新生代内存中,为什么除了Eden区,还要设置两个Survivor区?
19.JVM内存参数设置
20.JVM的运行模式和逃逸分析
21.JVM内存模型整体回顾
第四章 JVM内存分配与回收
22.对象优先在Eden区分配
23.大对象直接进入老年代
24.长期存活的对象将进入老年代
25.对象动态年龄判断
26.Minor GC后存活的对象Survivor区放不下
27.老年代空间分配担保机制
第五章 垃圾收集算法
28.如何判断对象可以被回收(第一篇)
29.如何判断对象可以被回收(第二篇)
30.垃圾收集算法
31.垃圾收集器(一)
32.垃圾收集器(二)
33.垃圾收集器(三)
34.每秒几十万并发的系统优化JVM
35.亿级流量电商系统如何优化JVM参数
第六章 JVM调优工具详解及调优实战
36.Jmap
37.Jstack
38.jstat
39.JVM运行情况预估
40.jstat调优小实战
41.GC日志调优小实战
...
等等等