天天看點

JVM性能調優監控工具 - jhatjhat - Java Heap Analyse Tool

jhat - Java Heap Analyse Tool

分析java堆(dump檔案),可以将堆中的對象以html的形式顯示出來,包括對象的數量,大小等等,并支援對象查詢語言

jhat [-stack <bool>] [-refs <bool>] [-port <port>] [-baseline <file>] [-debug <int>] [-version] [-h|-help] <file>

[options]
-J<flag>            -- 在啟動JVM時傳入一些啟動參數,如果需要使用多個JVM啟動參數,則傳入多個-J<flag>
-stack false|true   -- 關閉對象配置設定調用棧跟蹤,如果配置設定位置資訊在堆轉儲中不可用則必須将此标志設定為false,預設值為true
-refs false|true    -- 關閉對象引用跟蹤,預設值為true,預設情況下,傳回的指針是指向其他特定對象的對象,如反向連結或輸入引用,會統計/計算堆中的所有對象
-port <port>        -- 設定jhat HTTP server端口号,預設值7000
-exclude <file>     -- 指定對象查詢時需要排除的資料成員清單檔案。例如,如果檔案列列出了java.lang.String.value,那麼當從某個特定對象Object o計算可達的對象清單時,引用路徑涉及java.lang.String.value的都會被排除。
-baseline <file>    -- 指定一個基準堆轉儲。在兩個heap dumps中有相同object ID的對象會被标記為不是新的。其他對象被标記為新的。在比較兩個不同的堆轉儲時很有用
-debug <int>        -- 設定debug級别,0表示不輸出調試資訊,值越大則表示輸出更詳細的debug資訊
-version            -- 啟動後隻顯示版本資訊就退出
-h | -help          -- 列印輔助資訊
           
jhat -port 7000 heap.bin
           

https://docs.oracle.com/javase/8/docs/technotes/tools/unix/jhat.html

https://www.cnblogs.com/myna/p/7590620.html