【快班】深入JVM内核—原理、诊断与优化
编程技术
11周
11人
此课程所属【全栈程序猿】, 【葛一鸣讲师的课程】专业,专业内有不少于15门推荐课程,目前平台推出【专业课程0元学】活动,只需0元即可在所有的专业课程中任选5门学习,超值优惠,助您快速成长!点击这里了解
讲师
- geym
- 葛一鸣:从事Java软件开发多年,对Java、智能计算等领域颇有兴趣。现著有《实战java虚拟机》
课程简介
目前,Java是最为流行的编程语言之一,它的基础平台就是JVM。除了Java,如JRuby、Scala、Clojure等语言也运行在JVM平台。
熟悉和掌握JVM平台有着重要的实用价值和意义。
在本课程中个,将详细介绍JVM的基本原理、组成以及工作方式,并配合实际案例,介绍相关的调优技巧。
课程章节
- 第1课 初识JVM
- 1-1 JVM分类
- 1-2 Java语言规范
- 1-3 JVM规范
- 1-4 介绍JVM的基本知识和发展历史
- 1-5 介绍了Java语言规范和JVM规范
- 第2课 JVM运行机制简介
- 2-1 堆、栈、方法区等
- 2-2 JVM启动流程
- 2-3 内存模型和volatile实例
- 2-4 解释和编译运行的概念
- 2-5 介绍JVM的内部结构、启动流程以及内存模型
- 2-6 介绍JVM字节码的执行方式
- 第3课 常用JVM参数
- 3-1 堆的分配参数
- 3-2 栈分配及实例讲解
- 3-3 server与client模式
- 3-4 调试跟踪参数
- 3-5 查看当前JVM参数的方法
- 3-6 JVM参数的设置方法演示
- 3-7 包括内存分配、堆栈分配、虚拟机运行模式以及调试跟踪参数
- 第4课 介绍GC的基本算法和思想
- 4-1 GC的算法和种类
- 4-2 引用计数
- 4-3 标记清除
- 4-4 复制算法
- 4-5 标记压缩
- 4-6 可触及性
- 4-7 介绍分代、分区的思想方法
- 第5课 介绍GC的设置参数,并分析相关的案列
- 5-1 GC控制参数
- 5-2 Serial ParNew等GC参数
- 5-3 GC的参数搭配实例分析
- 5-4 对G1进行介绍说明
- 第6课 介绍ClassLoader的原理和应用
- 6-1 类装载
- 6-2 class装载流程
- 6-3 ClassLoader模式
- 6-4 ClassLoader的使用实例分析
- 6-5 热替换例子
- 6-6 详细介绍ClassLoader的原理和应用。
- 6-7 分析2个案例,说明ClassLoader的使用
- 第7课 介绍常用的JVM诊断和分析工具
- 7-1 性能监控工具
- 7-2 线程死锁分析
- 7-3 OOM分析
- 7-4 并以死锁和OOM为例,展示这些工具的使用
- 第8课 介绍了Java堆的分析方法,以一个实例为基础,展示对堆的分析过程。
- 8-1 分析Java堆
- 8-2 MAT的使用案例
- 8-3 Jvisualvm介绍使用
- 8-4 演示MAT的使用方法
- 第9课 介绍JVM中对多线程锁的实现
- 9-1 锁
- 9-2 baise锁
- 9-3 轻量级锁
- 9-4 自旋锁
- 9-5 JVM中加锁的实现过程源码分析
- 第10课 class文件结构与案例介绍
- 10-1 介绍JVM规范中的最重要的内容——Class文件结构,同时介绍ASM库的使用以及对class文件的修改。
- 第11课 介绍JVM的字节码以及反汇编方法
- 11-1 字节码执行
- 11-2 案例以及javap
- 11-3 ASM库介绍与使用
- 11-4 JIT及相关参数
- 11-5 介绍JVM的字节码以及反汇编方法,同时介绍JIT相关的参数和应用。
课程环境
Window Linux
授课对象
有一定的程序设计基础,对Java语言有所了解或者感兴趣的同学都可以加入到本课程中来。
收获预期
熟悉JVM的工作机制,了解Java虚拟机的工作原理,知道如何处理Java程序开发与运行中出现各种问题,故障诊断、以及调优
学费
学费: ¥400 ( 固定学费: ¥300, 逆向学费: ¥100 )
新颖的课程收费形式:“逆向收费”约等于免费学习,仅收取300元固定收费+100元逆向学费,学习圆满则逆向学费全额返还给学员!