1)jinfo -flags pid 查詢虛拟機運作參數資訊。
2)jinfo -flag name pid,查詢具體參數資訊。
3)jmap -heap pid:輸出堆記憶體設定和使用情況(JDK11使用jhsdb jmap --heap --pid pid)
4)jmap -histo pid:輸出heap的直方圖,包括類名,對象數量,對象占用大小
5)jmap -histo:live pid:同上,隻輸出存活對象資訊
6)jmap -clstats pid:輸出加載類資訊
7)jmap -help:jmap指令幫助資訊
8)jstat -class pid:輸出加載類的數量及所占空間資訊。
9)jstat -gc pid:輸出gc資訊,包括gc次數和時間,記憶體使用狀況(可帶時間和顯示條目參數)
10)jstat -gcutil pid millsecondinterval
11) JConsole pid
12) jcmd 1 VM.uptime 運作時長
13) jcmd 1 VM.flags 目前使用的參數 , jcmd 5296 VM.flags -all 所有參數
14) jinfo -sysprops 1 查詢所有目前的系統屬性
對應的對象是
[C is a char[]
[S is a short[]
[I is a int[]
[B is a byte[]
[[I is a int[][]
輸出堆棧char[]占用記憶體最大,往往跟String有關,String其内部使用final char[]數組來儲存資料的。
發現占用空間較大的對象,分析原因并處理