摘要:在的命令行中,一般開(kāi)發(fā)人員最耳熟能詳?shù)目隙ň褪堑瘸S妹?,不過(guò)在下還有許多其他的命令行工具,它們被用來(lái)監(jiān)測(cè)運(yùn)行時(shí)的狀態(tài),下面我們來(lái)詳細(xì)解讀一下幾個(gè)常用的工具以及如何使用。
在JDK的命令行中,一般開(kāi)發(fā)人員最耳熟能詳?shù)目隙ň褪莏ava,javac,javap等常用命令,不過(guò)在jdk/bin下還有許多其他的命令行工具,它們被用來(lái)監(jiān)測(cè)JVM運(yùn)行時(shí)的狀態(tài),下面我們來(lái)詳細(xì)解讀一下幾個(gè)常用的工具以及如何使用。
jhatjhat(JVM Heap Analysis Tool)命令是與jmap搭配使用,用來(lái)分析jmap生成的dump,jhat內(nèi)置了一個(gè)微型的HTTP/HTML服務(wù)器,生成dump的分析結(jié)果后,可以在瀏覽器中查看。在此要注意,一般不會(huì)直接在服務(wù)器上進(jìn)行分析,因?yàn)閖hat是一個(gè)耗時(shí)并且耗費(fèi)硬件資源的過(guò)程,一般把服務(wù)器生成的dump文件復(fù)制到本地或其他機(jī)器上進(jìn)行分析。
命令格式jhat [dumpfile]示例
$ jhat -J-Xmx512m dump.hprof eading from dump.hprof... Dump file created Fri Mar 11 17:13:42 CST 2016 Snapshot read, resolving... Resolving 271678 objects... Chasing references, expect 54 dots...................................................... Eliminating duplicate references...................................................... Snapshot resolved. Started HTTP server on port 7000 Server is ready.
中間的-J-Xmx512m是在dump快照很大的情況下分配512M內(nèi)存去啟動(dòng)HTTP服務(wù)器,運(yùn)行完之后就可在瀏覽器打開(kāi)Http://localhost:7000進(jìn)行快照分析
堆快照分析主要在最后面的Heap Histogram里,里面根據(jù)class列出了dump的時(shí)候所有存活對(duì)象。
分析同樣一個(gè)dump快照,MAT需要的額外內(nèi)存比jhat要小的多的多,所以建議使用MAT來(lái)進(jìn)行分析,當(dāng)然也看個(gè)人偏好。
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://m.hztianpu.com/yun/76217.html
摘要:用于生成虛擬機(jī)當(dāng)前時(shí)刻的線程快照。線程快照就是當(dāng)前虛擬機(jī)內(nèi)每一條線程正在執(zhí)行的方法堆棧的集合,生成線程快照的主要目的就是定位線程出現(xiàn)長(zhǎng)時(shí)間停頓的原因,如線程死鎖死循環(huán)請(qǐng)求外部資源導(dǎo)致的長(zhǎng)時(shí)間等待等都是導(dǎo)致線程長(zhǎng)時(shí)間停頓的常見(jiàn)原因。 在JDK的命令行中,一般開(kāi)發(fā)人員最耳熟能詳?shù)目隙ň褪莏ava,javac,javap等常用命令,不過(guò)在jdk/bin下還有許多其他的命令行工具,它們被用來(lái)監(jiān)...
摘要:打印等待回收對(duì)象的信息可以看到當(dāng)前隊(duì)列中并沒(méi)有等待線程執(zhí)行方法的對(duì)象。一般情況,會(huì)到客戶端用工具來(lái)分析用于生成虛擬機(jī)當(dāng)前時(shí)刻的線程快照。 運(yùn)用jvm自帶的命令可以方便的在生產(chǎn)監(jiān)控和打印堆棧的日志信息幫忙我們來(lái)定位問(wèn)題!雖然jvm調(diào)優(yōu)成熟的工具已經(jīng)有很多:jconsole、大名鼎鼎的VisualVM,IBM的Memory Analyzer等等,但是在生產(chǎn)環(huán)境出現(xiàn)問(wèn)題的時(shí)候,一方面工具的使...
摘要:一內(nèi)存調(diào)優(yōu)主要的目的是減小的頻率和的次數(shù)。調(diào)優(yōu)工具之主要用來(lái)輸出中運(yùn)行的進(jìn)程狀態(tài)信息。調(diào)優(yōu)工具之和用來(lái)查看堆內(nèi)存使用狀況,一般結(jié)合使用。 一、jvm內(nèi)存調(diào)優(yōu) 主要的...
摘要:虛擬機(jī)性能監(jiān)控與故障處理工具詳解概述本文參考的是周志明的深入理解虛擬機(jī)第四章,為了整理思路,簡(jiǎn)單記錄一下,方便后期查閱。虛擬機(jī)堆轉(zhuǎn)儲(chǔ)快照分析工具功能用于分析生成的。 虛擬機(jī)性能監(jiān)控與故障處理工具 詳解 4.1 概述 本文參考的是周志明的 《深入理解Java虛擬機(jī)》 第四章 ,為了整理思路,簡(jiǎn)單記錄一下,方便后期查閱。 JDK本身提供了很多方便的JVM性能調(diào)優(yōu)監(jiān)控工具,除了集成式的Vis...
摘要:概述是一個(gè)主要版本的發(fā)布這里介紹的是對(duì)的特性和增強(qiáng)的實(shí)現(xiàn)是的增強(qiáng)提案,包括增強(qiáng)建議和路線圖流程規(guī)范請(qǐng)求,描述了針對(duì)平臺(tái)的建議和最終規(guī)范主要變更統(tǒng)一模塊化標(biāo)準(zhǔn)這是全新的編程組件模塊,是可命名的可自描述的代碼和數(shù)據(jù)集合。 概述 java9是一個(gè)主要版本的發(fā)布 這里介紹的是Oracle對(duì)JDK9的特性和增強(qiáng)的實(shí)現(xiàn) JEP是JDK的增強(qiáng)提案,包括增強(qiáng)建議和路線圖流程 JSR(Java規(guī)范請(qǐng)...
閱讀 3543·2021-11-25 09:43
閱讀 2766·2021-09-22 15:54
閱讀 653·2019-08-30 15:55
閱讀 1035·2019-08-30 15:55
閱讀 2079·2019-08-30 15:55
閱讀 1806·2019-08-30 15:53
閱讀 3536·2019-08-30 15:52
閱讀 2109·2019-08-30 12:55