一次性精通JVM JAVA虚拟机

一次性精通JVM JAVA虚拟机
共103节 6982人在学 课程详情
课程目录
讨论留言
  • 基础入门

    • 快速了解课程内容(是否值得买)
    • 认识JVM
    • JDK、JRE、JVM关系及JDK9&10介绍
    • 各版本JDK目录及文件详解
    • JAVA代码是怎么执行的
    • AVA编译器执行流程
  • 字节码文件

    • jdk原生javap工具反汇编解析class文件
    • JBE工具可视化反汇编class文件
    • class文件的构成
    • class文件的结构分析
    • 魔数magic
    • 主次版本号major和minor
    • 常量池constant_pool结构解析
    • 常量池constant_pool基本数据类型解析
    • 常量池constant_pool类和字段类型解析
    • 访问标志access_flags与this和super类
    • 接口信息区interfaces解析
    • 属性信息区fields解析
    • 属性信息区methods解析
    • 属性信息区Code、Deprecated、Exception解析
    • 属性信息区ConstantValue解析
    • 属性信息区InnerClass、SourceFile解析
    • 属性信息区LineNumberTable解析
    • 属性信息区LocalVariableTable解析
    • class文件解析回顾总结
  • 类的加载、解释、编译

    • 类加载器的分类和加载范围
    • 类加载器的双亲委托及源码解析
    • 自定义类加载器
    • 自定义防反编译防篡改class文件
    • 字节码解释器、即时编译器、混合模式
    • 热点代码检测技术解析
    • JVM分层编译解析
  • 内存模型

    • JVM内存模型划分
    • JVM内存模型-程序计数器
    • JVM内存模型-虚拟机栈详解
    • JVM字节码指令的查找方法
    • JVM内存模型-虚拟机栈异常与调优
    • JVM内存模型-本地方法栈
    • JVM内存模型-JAVA堆及参数
    • JVM内存模型-方法区、永久代、元空间精讲
    • JVM内存模型-线程安全问题分析
  • 对象模型

    • 对象创建过程详解及内存分配方法
    • TLAB区和参数
    • JVM的XX参数查看方法
    • 对象访问-句柄访问和直接访问
    • 对象在内存中的存储结构
  • GC基础

    • 认识GC与死对象判断
    • 可达性分析与安全点和安全区
    • 对象的强软弱虚四种引用类型
    • 对象回收两次标记和finalize
    • 方法区的回收说明
  • GC算法与收集器

    • GC算法-标记清除
    • GC算法-复制算法
    • GC算法-标记整理
    • 分代收集策略与Minor、Major、Full GC
    • HotSpot七种垃圾收集器和组合说明
    • 垃圾收集器-Serial和Serial Old收集器
    • 垃圾收集器-ParNew收集器
    • 垃圾收集器-Parallel Scavenge和Parallel Old收集器
    • 垃圾收集器-CMS收集器
    • 垃圾收集器-G1收集器
    • 垃圾收集器-G1收集器核心Regin和RSet
    • 垃圾收集器-G1收集器核心3种GC
    • 垃圾收集器-收集器组合选型与参数设置
  • GC日志详解

    • GC日志详解-GC日志参数搭配
    • GC日志详解-以Serial收集为例详细解析GC日志
    • ParNew+CMS组合GC日志说明
    • Parallel+ParallelOld日志说明及差异总结
    • G1日志解析
  • 性能监控与故障排除

    • JCMD工具的基本指令
    • JCMD工具VM相关指令
    • JCMD工具NMT内存跟踪
    • JCMD工具Thread.print线程堆栈分析
    • JCMD工具GC.class_stats指令
    • JCMD工具GC.class_histogram指令
    • jcmd工具GC.run、run_finalization、heap_info
    • jcmd及JProfiler内存泄漏实操
    • JMX结合jconsle、jvisualvm、JMC实操
    • jconsle与JMX监控实操
    • jvisualvm监控实操
    • JMC的MBean监控服务实操
    • jcmd与JCM飞行记录仪JFR实操
    • jps与jstatd与jvisualvm的联合实操
    • jstat命令语法及class、complier、printcompilation使用
    • jstat命令分析gc情况
    • jstat命令新生代老年监控实操
    • jmap与jhat的实操
    • jstack与jcmd线程堆栈与死锁检测
    • jinfo使用实操
    • 远程调用与jdk工具总结
  • 阿里巴巴Arthas在线诊断工具

    • Arthas的安装和启动实操
    • Arthas的快速入门实操
    • Arthas的基础指令实操
    • Arthas的JVM相关指令实操
    • Arthas的class及classloader相关指令实操
    • Arthas的monitor和watch指令实操
    • Arthas的trace、stack、tt指令实操
    • Arthas的高级指令实操
  • 故障排除

    • 排查单点程序导致的CPU占用过高实操
    • 排查高并发导致的CPU占用过高实操和处理方案
    • 排查GC导致的CPU占用过高实操
    • 通过GC曲线判定你的GC是否异常
    • GC日志的可视化分析
播放页问题反馈
视频学习中有任何产品建议都可由此反
馈,我们将及时处理!

课时介绍

认识GC与死对象判断

课程介绍

为什么要学JVM

1、一切JAVA代码都运行在JVM之上,只有深入理解虚拟机才能写出更强大的代码,解决更深层次的问题。

2、JVM是迈向高级工程师、架构师的必备技能,也是高薪、高职位的不二选择。

3、同时,JVM又是各大软件公司笔试、面试的重中之重,据统计,头部的30家互利网公司,均将JVM作为笔试面试的内容之一。

4、JVM内容庞大、并且复杂难学,通过视频学习是最快速的学习手段。

课程介绍

本课程包含11个大章节,总计102课时,无论是笔试、面试,还是日常工作,可以让您游刃有余。

第1章 基础入门,从JVM是什么开始讲起,理解JDK、JRE、JVM的关系,java的编译流程和执行流程,让您轻松入门。

第2章 字节码文件,深入剖析字节码文件的全部组成结构,以及javap和jbe可视化反解析工具的使用。

第3章 类的加载、解释、编译,本章节带你深入理解类加载器的分类、范围、双亲委托策略,自己手写类加载器,理解字节码解释器、即时编译器、混合模式、热点代码检测、分层编译等核心知识。

第4章 内存模型,本章节涵盖JVM内存模型的全部内容,程序计数器、虚拟机栈、本地方法栈、方法区、永久代、元空间等全部内容。

第5章 对象模型,本章节带你深入理解对象的创建过程、内存分配的方法、让你不再稀里糊涂。

第6章 GC基础,本章节是垃圾回收的入门章节,带你了解GC回收的标准是什么,什么是可达性分析、安全点、安全区,四种引用类型的使用和区别等等。

第7章 GC算法与收集器,本章节是垃圾回收的重点,掌握各种垃圾回收算法,分代收集策略,7种垃圾回收器的原理和使用,垃圾回收器的组合及分代收集等。

第8章 GC日志详解,各种垃圾回收器的日志都是不同的,怎么样读懂各种垃圾回收日志就是本章节的内容。

第9章 性能监控与故障排除,本章节实战学习jcmd、jmx、jconsul、jvisualvm、JMC、jps、jstatd、jmap、jstack、jinfo、jprofile、jhat总计12种性能监控和故障排查工具的使用。

第10章 阿里巴巴Arthas在线诊断工具,这是一个特别小惊喜,教您怎样使用当前最火热的arthas调优工具,在线诊断各种JVM问题。

第11章 故障排除,本章会使用实际案例讲解单点故障、高并发和垃圾回收导致的CPU过高的问题,怎样排查和解决它们。

课程资料

课程附带配套项目源码2个

159页高清PDF理论篇课件1份

89页高清PDF实战篇课件1份

Unsafe源码PDF课件1份

class_stats字段说明PDF文件1份

jcmd Thread.print解析说明文件1份

JProfiler内存工具说明文件1份

字节码可视化解析工具1份

GC日志可视化工具1份

命令行工具cmder 1份

学习方法

理论篇部分推荐每天学习2课时,可以在公交地铁上用手机进行学习。

实战篇部分推荐对照视频,使用配套源码,一边练习一遍学习。

课程内容较多,不要一次性学太多,而是要循序渐进,坚持学习。

 

 

 

 

 

 

推荐课程

信息系统项目管理师自考笔记

李明 · 710人在学

python从0到1:期货量化交易系统(CTP实战,高频及合成K线数据

王先生 · 22071人在学

手把手搭建Java超市管理系统【附源码】(毕设)

汤小洋 · 4198人在学

Java毕设springboot外卖点餐系统 毕业设计毕设源码 使用教

黄菊华 · 786人在学

基于SSM酒店管理系统(毕设)

小尼老师 · 837人在学

java项目实战之购物商城(java毕业设计)

Long · 5151人在学

手把手搭建Java求职招聘系统【附源码】(毕设)

汤小洋 · 1504人在学

Python Django 深度学习 小程序

钟翔 · 2315人在学

城管局门前三包管理系统+微信小程序(vue+springboot)

赖国荣 · 597人在学

Vue+Uni-app(uniapp)入门与实战+赠送仿美团点餐小程序

李杰 · 3979人在学

正在试验
后自动删除环境
课程实验
本次实验时间已到期 00:00:00

    订阅失败

    一次性精通JVM JAVA虚拟机
    一次性精通JVM JAVA虚拟机 ...

    订阅列表已满,请先移出部分订阅内容。

    当前章节需购买后观看
    开通超级会员免费看!专家精选系列课程,满足你从入门到精通!更有问答月卡免费送,你的问题有问必答!
    提交答案

    购买课程

    扫码完成付费,可继续学习全部课程内容

    加载中...
    课件正在飞速打包中,请耐心等待几秒钟~