TA的每日心情 | 开心 2017-10-7 10:45 |
---|
签到天数: 4 天 [LV.2]偶尔看看I
Lv1码农

- 积分
- 35
|
+ O: J( c/ o) b0 F: C$ @$ R2 r/ T( H+ j( k# @9 K7 m
课程目录
7 [9 W* f5 o; ?$ F9 _第一周
& \% |& c9 Y; a+ \1 L1 m% L7 W初识JVM |3 K( N9 L3 b' z! S
JVM分类
# W8 h" n! b- W2 ~7 X' \# C- tJava语言规范* ]6 E4 Z5 \" R" _* {" X' j
JVM规范
+ ?+ }% B- H' |5 P3 ]+ z介绍JVM的基本知识和发展历史,并介绍了Java语言规范和JVM规范。
- K8 K# v: a7 O" b% Z8 q- X" I
* n- J; F4 ]2 f' p. n第二周) e0 H' z( F: [4 Y
JVM运行机制简介
' w0 w: Z; t" t1 B' \8 x& D- P堆、栈、方法区等, u* [' p3 l5 W. \% {% B/ k. A
JVM启动流程8 b" I8 g* v6 H" F+ o" Q/ { J
内存模型和volatile实例4 B1 l' {1 D% G2 I8 d6 _
解释和编译运行的概念
: p4 X+ ~1 ^) Q' Y介绍JVM的内部结构、启动流程以及内存模型。并介绍JVM字节码的执行方式。
4 U8 l# _7 n. J
; ^/ s& \3 }6 L3 e" i第三周
, s! G! X) j( d! y0 w& U' T. w v常用JVM参数+ @$ W- I" ?- }; f0 k; e+ V
堆的分配参数( ?* c" _) y) I7 H/ \* F0 E
栈分配及实例讲解. C# x6 e( c) I6 H* y
server与client模式2 W& n% J2 @. n( Y" u9 h( b# B
调试跟踪参数% t* K1 ~9 c( C# ?. U% o
介绍常用的JVM参数,包括内存分配、堆栈分配、虚拟机运行模式以及调试跟踪参数。, T2 y }8 m& n/ [8 Y
& Y: R: [2 X# i; P F& f! T9 z7 ^
第四周
. v4 y4 O4 _% X- p( PGC的算法和种类
8 a4 `5 K. Q+ f% y2 s1 X8 N引用计数% i* u) M' i* a
标记清除% U* m4 w2 T. X0 Y- M
复制算法- q7 n- c# h" w# B" F, S
标记压缩
$ J4 [+ I$ x$ v0 @* r可触及性$ b1 o4 d. j" |1 ]4 N3 P
本章是理论性较强的一章,主要介绍GC的基本算法和思想,本章作为下一章节的前序课程。
" ?. V3 {" U. X/ ]" M. p7 R% H5 ]5 S% ]# E6 V0 P
第五周9 m& I7 }8 C7 x$ G) D
GC控制参数% o9 H, N& l1 M/ _4 E
Serial ParNew等GC参数8 |1 f) ] V# r. u% i
GC的参数搭配实例分析
* |1 g3 Y# H; D8 }介绍GC的设置参数,并分析相关的案列。
3 _, l2 {; w& J; T! ]1 _5 a4 F& s) L2 }/ [, T& E# g7 @9 S; @
第六周' u$ ?$ J1 j3 n. n: W. {0 r$ w; e
类装载
+ p) Z- J: e: ?3 kclass装载流程# ~ `1 g4 d7 Z* f
ClassLoader模式) r! F% b# W, ]# g" h) O
ClassLoader的使用实例分析
8 @# R) p7 I) ~, V" _热替换例子
& N5 m" F( S+ t" f* J; V" d详细介绍ClassLoader的原理和应用。分析2个案例,说明ClassLoader的使用。" _8 w- h, y0 Z; a- k
/ e# n% n) ]0 `/ k, t" i1 G" Z第七周( S2 b4 P* ]. y$ A# }# l
性能监控工具
# l8 v' ^, i' t' P% C线程死锁分析
$ E2 h! h ^! R. |$ F, BOOM分析1 i6 W3 R6 e# H/ o
介绍常用的JVM诊断和分析工具,并以死锁和OOM为例,展示这些工具的使用。
& V( u/ j: u+ m; s" I- e1 i9 D# F- F1 P) m: i+ I
第八周
5 m, r* t9 z, l( N* s3 m. I分析Java堆
6 G* h2 l' b' o# T d0 bMAT的使用案例/ |7 e) _+ [4 f" m5 B
Jvisualvm介绍使用
3 R$ E. A; |( o6 A z, U介绍了Java堆的分析方法,以一个实例为基础,展示对堆的分析过程。1 K' X2 T- x8 G( v0 |: Y; U. {
2 G) [* x6 L0 L2 z3 o第九周" i% n( w* H: ^/ i5 h. s7 ~
锁
6 ~2 M2 t- \* K8 |+ _7 T! X) m2 g% rbaise锁* Z: M6 }4 h+ C4 y9 M
轻量级锁2 m" A; K8 v7 D. a2 c
自旋锁
0 K+ ?; R0 Y0 }; H* O3 b2 w介绍JVM中对多线程锁的实现。6 D: k/ ~# R( j& X7 u+ e
9 i! K. U) d. I4 }' v3 Z
第十周
5 ~) F1 ~0 h% D! a6 T3 h* xclass文件结构% ]8 s1 W+ i9 Y* Z- r9 V# ?7 \
ASM库介绍5 \) J. R" Z* P8 x3 `
介绍JVM规范中的最重要的内容——Class文件结构,同时介绍ASM库的使用以及对class文件的修改。
3 R8 ^. m1 U4 Z) ~4 D
. A: k5 ~, X* J* Z第十一周; A7 }0 L+ D4 t4 `% }7 q
字节码执行 z# Z3 [! U! r4 o1 @( \6 Q2 }
案例以及javap
, l3 i. P O; I" W; C- i Q. l4 q L QJIT及相关参数9 `' G2 q w# Y
介绍JVM的字节码以及反汇编方法,同时介绍JIT相关的参数和应用。
; D, n! X5 U) t' G
/ h7 E5 }6 U- n7 W+ @/ M4 }- b& ?# ^2 h3 q. W: k
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
|