`

【转】Java问题定位技术

JVM 
阅读更多

经典的一本书。Java问题定位必备。

 

部分目录
1 Java线程堆栈分析1
1.1 如何输出线程堆栈? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.2 如何解读线程堆栈? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.2.1 线程的解读. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.2.2 锁的解读. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
1.2.3 线程状态的解读. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
1.3 如何借助线程堆栈进行问题分析? . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
1.3.1 线程死锁分析. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
1.3.2 Java代码死循环等导致的CPU过高分析. . . . . . . . . . . . . . . . . . . . 29
1.3.3 高消耗CPU代码的常用分析方法. . . . . . . . . . . . . . . . . . . . . . . . 31
1.3.4 资源不足等导致的性能下降分析. . . . . . . . . . . . . . . . . . . . . . . . 34
1.3.5 线程不退出导致的系统挂死分析. . . . . . . . . . . . . . . . . . . . . . . . 36
1.3.6 多个锁导致的锁链分析. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
1.3.7 通过线程堆栈进行性能瓶颈分析. . . . . . . . . . . . . . . . . . . . . . . . 38
1.3.8 线程堆栈不能分析什么问题? . . . . . . . . . . . . . . . . . . . . . . . . . 38
2 通过Java线程堆栈进行性能瓶颈分析39
2.1 常见的性能瓶颈. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
2.2 性能瓶颈分析的手段和工具. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44

.

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics