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