课程简介
“Write Once , Run Anywhere”。
相信每位Java人对这句话都不陌生,“一次编写,到处运行”,我们说这句话的底气就来自于 JVM(Java Virtual Machine)。你可能花过很多精力学习 JVM 的知识,但在面对真实生产环境产生的问题,依旧会束手无策:
正在运行的 Java 程序,突然 OOM
程序异常卡顿,CPU 疯狂运转,GC 时间飙升
面对一堆 JVM 参数无从下手,甚至错误配置某个参数而产生负面效果
一头雾水,不知如何了解线上应用的垃圾回收状况
……
不论是在问题现场还是在跳槽面试的时候,面的这些问题,如何快速定位和解决问题,需要你对Java 虚拟机的实现和优化,有极为深刻的理解。这门课会从四个方面,从基础知识到实战问题解决方案,带你重新学习 Java 虚拟机,带你还原最真实的问题现场,找到解决方法。
第一章基础原理:
主要讲解一些基础概念,以及 JVM 的内存区域划分和类加载机制等。
第二章垃圾回收:
Java 中有非常丰富的垃圾回收器,此部分以理论为主,通过横向比较的方式讲解。
第三章实战部分:
模拟 OOM 的溢出场景,通过实例分析线上问题,提供多个排查工具的使用介绍。
第四章进阶部分:
该模块偏向底层,介绍 JMM,从字节码层面来看 Java 的基础特性以及并发方面的问题。
学习收获
方法丨垃圾回收、内存、GC 等常见问题“灭火”方案
面试丨掌握大厂面试 JVM 面试真题解法
进阶丨内存模型、字节码的底层原理和实战进阶
提升丨掌握中大型项目下,性能瓶颈调优技巧
课程目录
开篇词
开篇词:JVM,一块难啃的骨头
基础原理
第01讲:一探究竟:为什么需要 JVM?它处在什么位置?
第02讲:大厂面试题:你不得不掌握的 JVM 内存管理
第03讲:大厂面试题:从覆盖 JDK 的类开始掌握类的加载机制
第04讲:动手实践:从栈帧看字节码是如何在 JVM 中进行流转的
垃圾回收
第05讲:大厂面试题:得心应手应对 OOM 的疑难杂症
第06讲:深入剖析:垃圾回收你真的了解吗?(上)
第06讲:深入剖析:垃圾回收你真的了解吗?(下)
第07讲:大厂面试题:有了 G1 还需要其他垃圾回收器吗?
第08讲:案例实战:亿级流量高并发下如何进行估算和调优
实战部分
第09讲:案例实战:面对突如其来的 GC 问题如何下手解决
第10讲:动手实践:自己模拟 JVM 内存溢出场景
第11讲:动手实践:遇到问题不要慌,轻松搞定内存泄漏
第12讲:工具进阶:如何利用 MAT 找到问题发生的根本原因
第13讲:动手实践:让面试官刮目相看的堆外内存排查
第14讲:预警与解决:深入浅出 GC 监控与调优
第15讲:案例分析:一个高死亡率的报表系统的优化之路
第16讲:案例分析:分库分表后,我的应用崩溃了
进阶部分
第17讲:动手实践:从字节码看方法调用的底层实现
第18讲:大厂面试题:不要搞混 JMM 与 JVM
第19讲:动手实践:从字节码看并发编程的底层实现
第20讲:动手实践:不为人熟知的字节码指令
第21讲:深入剖析:如何使用 Java Agent 技术对字节码进行修改
第22讲:动手实践:JIT 参数配置如何影响程序运行?
第23讲:案例分析:大型项目如何进行性能瓶颈调优?
彩蛋
第24讲:未来:JVM 的历史与展望
第25讲:福利:常见 JVM 面试题补充
请登录后发表评论
注册