摘要:在的命令行中,一般開發人員最耳熟能詳的肯定就是等常用命令,不過在下還有許多其他的命令行工具,它們被用來監測運行時的狀態,下面我們來詳細解讀一下幾個常用的工具以及如何使用。
在JDK的命令行中,一般開發人員最耳熟能詳的肯定就是java,javac,javap等常用命令,不過在jdk/bin下還有許多其他的命令行工具,它們被用來監測JVM運行時的狀態,下面我們來詳細解讀一下幾個常用的工具以及如何使用。
jhatjhat(JVM Heap Analysis Tool)命令是與jmap搭配使用,用來分析jmap生成的dump,jhat內置了一個微型的HTTP/HTML服務器,生成dump的分析結果后,可以在瀏覽器中查看。在此要注意,一般不會直接在服務器上進行分析,因為jhat是一個耗時并且耗費硬件資源的過程,一般把服務器生成的dump文件復制到本地或其他機器上進行分析。
命令格式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內存去啟動HTTP服務器,運行完之后就可在瀏覽器打開Http://localhost:7000進行快照分析
堆快照分析主要在最后面的Heap Histogram里,里面根據class列出了dump的時候所有存活對象。
分析同樣一個dump快照,MAT需要的額外內存比jhat要小的多的多,所以建議使用MAT來進行分析,當然也看個人偏好。
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/76217.html
摘要:用于生成虛擬機當前時刻的線程快照。線程快照就是當前虛擬機內每一條線程正在執行的方法堆棧的集合,生成線程快照的主要目的就是定位線程出現長時間停頓的原因,如線程死鎖死循環請求外部資源導致的長時間等待等都是導致線程長時間停頓的常見原因。 在JDK的命令行中,一般開發人員最耳熟能詳的肯定就是java,javac,javap等常用命令,不過在jdk/bin下還有許多其他的命令行工具,它們被用來監...
摘要:虛擬機性能監控與故障處理工具詳解概述本文參考的是周志明的深入理解虛擬機第四章,為了整理思路,簡單記錄一下,方便后期查閱。虛擬機堆轉儲快照分析工具功能用于分析生成的。 虛擬機性能監控與故障處理工具 詳解 4.1 概述 本文參考的是周志明的 《深入理解Java虛擬機》 第四章 ,為了整理思路,簡單記錄一下,方便后期查閱。 JDK本身提供了很多方便的JVM性能調優監控工具,除了集成式的Vis...
摘要:概述是一個主要版本的發布這里介紹的是對的特性和增強的實現是的增強提案,包括增強建議和路線圖流程規范請求,描述了針對平臺的建議和最終規范主要變更統一模塊化標準這是全新的編程組件模塊,是可命名的可自描述的代碼和數據集合。 概述 java9是一個主要版本的發布 這里介紹的是Oracle對JDK9的特性和增強的實現 JEP是JDK的增強提案,包括增強建議和路線圖流程 JSR(Java規范請...
閱讀 3457·2021-11-25 09:43
閱讀 2605·2021-09-22 15:54
閱讀 591·2019-08-30 15:55
閱讀 974·2019-08-30 15:55
閱讀 1998·2019-08-30 15:55
閱讀 1741·2019-08-30 15:53
閱讀 3465·2019-08-30 15:52
閱讀 2039·2019-08-30 12:55