概念
一、命令行工具
Jps 進程狀況
JStat 統計信息
JInfo 配置信息
JMap 內存映射
JHat 堆快照
JStack 棧跟蹤
Hsdis 反彙編
二、可視化工具
JConsole 監控管理控制檯
VisualVM 可視化虛擬監控
Jstat
[一]類加載統計 jstat -class pid
Loaded 類的已加載數量
Bytes 已加載-佔用空間大小
Unloaded 類的未加載數量
Bytes 未加載-佔用空間大小
Time 耗時
[二]編譯統計 jstat -compiler pid
Compiled 編譯數量
Failed 失敗數量
Invalid 不可用數量
Time 時間
FailedType 失敗類型
FailedMethod 失敗方法
[三]攔擊回收統計 jstat -gc pid
S0C 第一個倖存區的大小
S1C 第二個倖存區的大小
S0U 第一個倖存區的使用大小
S1U 第二個倖存區的使用大小
EC 伊甸園區的大小
EU 伊甸園區的使用大小
OC 老年代的大小
OU 老年代的使用大小
MC 方法區的大小
MU 方法區的使用大小
CCSC 壓縮類空間大小
CCSU 壓縮類空間使用大小
YGC 年輕代的垃圾回收次數
YGCT 年輕代的垃圾回收消耗時間
FGC 老年代的垃圾回收次數
FGCT 老年代的垃圾回收消耗時間
GCT 垃圾回收消耗總時間
[四]堆內存統計 jstat -gccapacity pid
NGCMN 新生代_最小容量
MGCMX 新生代_最大容量
MGC 新生代_當前容量
S0C 第一個倖存區_大小
S1C 第二個倖存區_大小
EC 伊甸園區_大小
OGCMN 老年代_最小容量
OGCMX 老年代_最大容量
OGC 老年代_當前大小
OC 老年代_當前
MCMN 最小元數據容量
MCMX 最大元數據容量
MC 當前元數據空間大小
CCSMN 最小壓縮類空間大小
CCSMX 最大壓縮類空間大小
CCSC 當前壓縮類空間大小
YGC 年輕代GC次數
FGC 老年代GC次數
Jconsole
一概覽
[一]線程
[1]活動 16
[2]峯值 17
[3]總計 28
[二]類
[1]已加載 3868
[2]已卸載 39
[3]總計 3907
[三]CPU佔用率 0.1%
二內存
[一]圖表
[Ⅰ]堆內存使用量
[Ⅱ]非堆內存使用量
[Ⅲ]內存池
[1]PS Eden Space
[2]PS Survivor Space
[3]PS Old Gen
[4]PS Code Cache
[5]PS Perm Gen
[Ⅳ]執行GC
[二]詳細信息
[1]時間
[2]已用
[3]已提交
[4]最大值
[5]GC時間 PS MarkSweep
PS Scavenge
三線程
[一]圖表
[1]峯值線程 17
[2]活動線程 16
[二]詳細信息
[1]名稱 main
[2]狀態 TIMEED_WAITING
[3]總阻止數 0
[4]總等待數 201
[5]堆棧跟蹤
[6]檢查死鎖
四類
已加載當前類 3905
已加載類總數 3944
已卸載類總數 39
五VM概要
[一]
連接名稱 pid:996
虛擬機 Java HotSpot
供應商 Oracle Corporation
名稱 996UserName
運行時間 1小時26分鐘
進程CPU時間 11.590秒
JIT編譯器 HotSpot 64-Bit Tiered Compilers
總編譯時間 2.270秒
[二]
活動線程 16
峯值線程 18
守護程序線程 14
啓動線程總數 41
已加裝當前類 3910
已加載類總數 3949
已卸載類總數 39
[三]
當前堆大小 20,524KB
最大堆大小 699,392KB
提交內存 105,984KB
暫掛最終處理 0對象
垃圾收集器 名稱 = PS MarkSweep
收集 = 6
總花費時間 = 0.251秒
垃圾收集器 名稱 = PS Scavenge
收集 = 39
總花費時間 = 0.123秒
[四]
操作系統 Windows 7.6.1
體系結構 amd64
處理程序數 4
提交虛擬內存 218,612KB
總物理內存 7,889,360KB
空閒物理內存 2,248,760KB
總交換空間 15,776,820KB
空閒交換空間 9,228,900KB
[五]
VM參數
庫路徑
引導類路徑
六MBean
[一]JMImplementation
[二]com.sun.management
[三]java.lang
[四]java.nio
[五]java.util.logging