《JVM精講與GC調(diào)優(yōu)教程》精華版

JVM故障診斷與性能優(yōu)化,是中高級(jí)程序員、架構(gòu)師等的必備技能,更是入職大廠的敲門磚。JVM作為Java生態(tài)的核心價(jià)值體現(xiàn),垃圾回收算法、JIT、底層原理值得每個(gè)程序員去探索,而且JVM是跨語(yǔ)言的平臺(tái),對(duì)于深入理解Scala、Kotlin、JavaScript、Jython、Groovy等語(yǔ)言非常有幫助。

微信圖片_20231107145831.jpg

本套教程為滿足更多學(xué)習(xí)者的需求,是經(jīng)典教程的濃縮精華版,重點(diǎn)與難點(diǎn)突出,更注重實(shí)戰(zhàn)演練,集成了百余道大廠真題,并增加了調(diào)優(yōu)內(nèi)容,含4大OOM案例和7大性能優(yōu)化案例。學(xué)習(xí)者可以通過(guò)本套教程,快速學(xué)習(xí)或有選擇的學(xué)習(xí)。

 

教程目錄

 

01-教程簡(jiǎn)介

02-JVM與GC調(diào)優(yōu)內(nèi)容介紹

03-JVM內(nèi)容概述

04-字節(jié)碼文件的概述

05-字節(jié)碼相關(guān)的面試題(上)

06-字節(jié)碼相關(guān)的面試題(下)

07-Class文件結(jié)構(gòu)的分析

08-相關(guān)的字節(jié)碼指令

09-類的加載概述_loading的階段

10-鏈接環(huán)節(jié)的執(zhí)行

11-類的初始化_主動(dòng)使用與被動(dòng)使用

12-類的使用與類的卸載

13-類的加載器的分類

14-ClassLoader的源碼分析

15-自定義類的加載器

16-雙親委派機(jī)制

17-Tomcat的類加載機(jī)制

18-程序計(jì)數(shù)器的理解

19-棧的理解

20-局部變量表的說(shuō)明

21-操作數(shù)棧

22-動(dòng)態(tài)鏈接(指向運(yùn)行時(shí)常量池中該方法的引用)

23-方法返回地址

24-??偨Y(jié)的五個(gè)面試問(wèn)題

25-本地方法棧的說(shuō)明

26-堆空間大小的設(shè)置

27-新生代與老年代的參數(shù)設(shè)置

28-對(duì)象分配過(guò)程

29-MinorGC、MajorGC、FullGC

30-方法區(qū)的設(shè)置_演進(jìn)

31-教程小結(jié)

32-對(duì)象的創(chuàng)建方式

33-創(chuàng)建的對(duì)象的內(nèi)存分配過(guò)程

34-對(duì)象的內(nèi)存布局

35-對(duì)象的訪問(wèn)定位

36-解釋器與JIT編譯器

37-JIT針對(duì)何種代碼進(jìn)行提前編譯

38-兩種不同的編譯器C1和C2

39-GC的基本概念

40-引用技術(shù)算法的理解

41-可達(dá)性分析算法

42-垃圾標(biāo)記和清除環(huán)節(jié)的算法

43-System.gc()與finalize()的說(shuō)明

44-內(nèi)存溢出和內(nèi)存泄漏問(wèn)題

45-安全點(diǎn)與安全區(qū)域_并行與并發(fā)

46-五種引用的說(shuō)明

47-GC評(píng)價(jià)指標(biāo)

48-GC的組合關(guān)系

49-SerialGC

50-ParNewGC

51-ParallelGC

52-CMSGC

53-G1GC

54-GC日志分析

55-案例一:堆溢出

56-案例二:元空間溢出

57-案例三:GC overhead limit exceeded

58-案例四:創(chuàng)建線程1

59-案例四:創(chuàng)建線程2

60-調(diào)優(yōu)的基本問(wèn)題

61-調(diào)優(yōu)的步驟

62-Jmeter的配置

63-優(yōu)化案例1:調(diào)整堆大小提升服務(wù)的吞吐量

64-優(yōu)化案例2:逃逸分析之棧上分配

65-優(yōu)化案例2:逃逸分析之標(biāo)量替換、鎖消除

66-優(yōu)化案例3:合理配置堆內(nèi)存

67-如何計(jì)算YGC發(fā)生頻率

68-UseAdaptiveSizePolicy的使用

69-優(yōu)化案例4:CPU占用很高的排查方案

70-優(yōu)化案例5:G1并發(fā)GC線程數(shù)對(duì)性能的影響

71-優(yōu)化案例6:調(diào)整垃圾回收器對(duì)吞吐量的影響

72-優(yōu)化案例7:日均百萬(wàn)訂單如何設(shè)置JVM參數(shù)

73-多種命令行工具的使用

74-Arthas的基本使用

75-教程總結(jié)