在這篇文章里我將教會(huì)你如何分析JVM的線程堆棧以及如何從堆棧信息中找出問題的根因。在我看來線程堆棧分析技術(shù)是Java EE產(chǎn)品支持工程師所必須掌握的一門技術(shù)。在線程堆棧中存儲(chǔ)的信息,通常遠(yuǎn)超出你的想象,我們可以在工作中善加利用這些信息。
我的目標(biāo)是分享我過去十幾年來在線程分析中積累的知識(shí)和經(jīng)驗(yàn)。這些知識(shí)和經(jīng)驗(yàn)是在各種版本的JVM以及各廠商的JVM供應(yīng)商的深入分析中獲得的,在這個(gè)過程中我也總結(jié)出大量的通用問題模板。
那么,準(zhǔn)備好了么,現(xiàn)在就把這篇文章加入書簽,在后續(xù)幾周中我會(huì)給大家?guī)磉@一系列的專題文章。還等什么,請(qǐng)趕緊給你的同事和朋友分享這個(gè)線程分析培訓(xùn)計(jì)劃吧。
聽上去是不錯(cuò),我確實(shí)是應(yīng)該提升我的線程堆棧分析技能...但我要從哪里開始呢?
我的建議是跟隨我來完成這個(gè)線程分析培訓(xùn)計(jì)劃。下面是我們會(huì)覆蓋到的培訓(xùn)內(nèi)容。同時(shí),我會(huì)把我處理過的實(shí)際案例分享給大家,以便與大家學(xué)習(xí)和理解。
1) 線程堆棧概述及基礎(chǔ)知識(shí)
2) 線程堆棧的生成原理以及相關(guān)工具
3) 不同JVM線程堆棧的格式的差異(Sun HotSpot、IBM JRE、Oracal JRockit)
4) 線程堆棧日志介紹以及解析方法
5) 線程堆棧的分析和相關(guān)的技術(shù)
6) 常見的問題模板(線程竟態(tài)、死鎖、IO調(diào)用掛死、垃圾回收/OutOfMemoryError問題、死循環(huán)等)
7) 線程堆棧問題實(shí)例分析
我希望這一系列的培訓(xùn)能給你帶來確實(shí)的幫助,所以請(qǐng)持續(xù)關(guān)注每周的文章更新。
但是如果我在學(xué)習(xí)過程中有疑問或者無法理解文章中的內(nèi)容該怎么辦?
不用擔(dān)心,把我當(dāng)做你的導(dǎo)師就好。任何關(guān)于線程堆棧的問題都可以咨詢我(前提是問題不能太low)。請(qǐng)隨意選擇下面的幾種方式與我取得聯(lián)系:
1) 直接本文下面發(fā)表評(píng)論(不好意思的話可以匿名)
2) 將你的線程堆棧數(shù)據(jù)提交到Root Cause Analysis forum
3) 發(fā)Email給我,地址是 @phcharbonneau@hotmail.com
能幫我分析我們產(chǎn)品上遇到的問題么?
當(dāng)然可以,如果你愿意的話可以把你的堆?,F(xiàn)場(chǎng)數(shù)據(jù)通過郵件或論壇 Root Cause Analysis forum發(fā)給我。處理實(shí)際問題是才是學(xué)習(xí)提升技能的王道。
我真心期望大家能夠喜歡這個(gè)培訓(xùn)。所以我會(huì)盡我所能去為你提供高質(zhì)量的材料,并回答大家的各種問題。
在介紹線程堆棧分析技術(shù)和問題模式之前,先要給大家講講基礎(chǔ)的內(nèi)容。所以在這篇帖子里,我將先覆蓋到最基本的內(nèi)容,這樣大家就能更好的去理解JVM、中間件、以及Java EE容器之間的交互。
Java VM 概述
Java虛擬機(jī)是Jave EE 平臺(tái)的基礎(chǔ)。它是中間件和應(yīng)用程序被部署和運(yùn)行的地方。
JVM向中間件軟件和你的Java/Java EE程序提供了下面這些東西:
主站蜘蛛池模板: 兰西县| 五河县| 东明县| 阿坝县| 大连市| 页游| 株洲县| 句容市| 华阴市| 崇左市| 江源县| 商洛市| 井冈山市| 彰化市| 石门县| 江达县| 陵水| 杂多县| 湘西| 临泉县| 赤城县| 曲周县| 兴宁市| 卢龙县| 双牌县| 正宁县| 海兴县| 陆良县| 仲巴县| 綦江县| 吴川市| 和平县| 四平市| 应用必备| 桦南县| 卢湾区| 万宁市| 房山区| 江华| 麟游县| 宁陕县|