深入JVM内核 - 原理、诊断与优化
课程简介:目前,Java是最为流行的编程语言之一,它的基础平台就是JVM。除了Java,如JRuby、Scala、Clojure等语言也运行在JVM平台。熟悉和掌握JVM平台有着重要的实用价值和意义。在本课程中个,将详细介绍JVM的基本原理、组成以及工作方式,并配合实际案例,介绍相关的调优技巧。课程大纲:第一课初识JVMJVM分类Java语言规范JVM规范介绍JVM的基本知识和发展历史,并介绍了Java语言规范和JVM规范。第二课JVM运行机制简介堆、栈、方法区等JVM启动流程内存模型和volatile实例解释和编译运行的概念介绍JVM的内部结构、启动流程以及内存模型。并介绍JVM字节码的执行方式。第三课常用JVM参数堆的分配参数栈分配及实例讲解server与client模式调试跟踪参数介绍常用的JVM参数,包括内存分配、堆栈分配、虚拟机运行模式以及调试跟踪参数。第四课GC的算法和种类引用计数标记清除复制算法标记压缩可触及性本章是理论性较强的一章,主要介绍GC的基本算法和思想,本章作为下一章节的前序课程。第五课GC控制参数Serial ParNew等GC参数GC的参数搭配实例分析介绍GC的设置参数,并分析相关的案列。第六课类装载class装载流程ClassLoader模式ClassLoader的使用实例分析热替换例子详细介绍ClassLoader的原理和应用。分析2个案例,说明ClassLoader的使用。第七课性能监控工具线程死锁分析OOM分析介绍常用的JVM诊断和分析工具,并以死锁和OOM为例,展示这些工具的使用。第八课分析Java堆MAT的使用案例Jvisualvm介绍使用介绍了Java堆的分析方法,以一个实例为基础,展示对堆的分析过程。第九课锁baise锁轻量级锁自旋锁介绍JVM中对多线程锁的实现。第十课class文件结构ASM库介绍介绍JVM规范中的最重要的内容——Class文件结构,同时介绍ASM库的使用以及对class文件的修改。第十一课字节码执行案例以及javapJIT及相关参数介绍JVM的字节码以及反汇编方法,同时介绍JIT相关的参数和应用。
相关资源