使用工具須要開啓JMX,1.6自動開啓,1.5須要加參數
jps Process Status HotSpot虛擬機進程, main入口, 進程的本地虛擬機的惟一ID lvmid. 這個id頗有用,其餘工具都須要,通常來講 與 PID一致。
jstat Statistics Monitoring Tool HotSpot各方面運行數據 。 類裝載,內存等運行數據
jstat -gc 2754 250 20 對lvmid爲2754的每一個250毫秒查詢一次供查詢50次垃圾收集的狀態
不少參數可用
jinfo 虛擬機配置信息 查看和調整各項參數。
jinfo -flag CMSiNI.. 1444 查看 lvmid這個屬性的值
jmap VM內存轉儲快照 heapdump
可以查看兩個代的詳細信息,那種收集器等。 不少命令都只能在linux下有小
-dump 生成快照
-heap 顯示那種回收期,參數配置等信息。
jhat HeapDempBrowser 分析heapdump文件,創建一個http的服務器,能夠經過瀏覽器查看結果。
jhat file.bin 啓動後使用http://localhost:7000進行查看
jstack 堆棧跟蹤工具, 當前時刻的線程快照。 thearddump
主要定位線程出現長時間停頓的緣由,如死鎖,死循環,請求外部資源等。 能夠知道僵住的線程在等待什麼,或者在作什麼。
jsatck -l lvmid 除堆棧外顯示加鎖信息。
能夠使用Thread累的getAllStackTraces()方法,獲取全部線程,能夠作一個動態的查看的頁面linux
JConsole
基於JMX
氣動就能選擇lvmid,不用執行jps了
內存標籤頁至關於jstat命令 能夠for不停的把大點的對象加入list
線程頁至關於jstack 能夠寫死循環(停留在某一個行),或者是lock.wait()這樣的代碼來觀察 WAITING狀態
互相引用死鎖 BLOCKED狀態瀏覽器
Visualvm: 多合一處理工具,還提供了eclipse下的插件
功能強大,官方,插件式,功能:
dump日誌
分析程序性能
BTrace插件。服務器