常用命令:
- Jps
- (虛擬機進程狀況工具) 查看系統內所有HotSpot虛擬機進程號
- 常用方 式:jps -lv 輸出主類名及啓動JVM參數
- Jstat
- (虛擬機統計信息監視工具) 收集虛擬機各參數:如finalize情況及GC情況等
- 常用方式:jstat <jps 獲取到的參數> -gcutil 每隔多少秒一次 一共多少次
- Jinfo
- (Java配置信息工具) 顯示虛擬機配置參數
- 常用方式:jinfo <jps 獲取到的參數> jinfo [option] pid(例子)
- Jmap
- (Java內存映像工具)
- 堆轉儲快照,堆內的快照。
- 常用方式:jmap <jps 獲取到的參數>。
- 另外可獲取堆轉儲的方式有:開啓OOM時自動生成dump文件。或者設置通過Ctrl + Break建生成快照。也可以通過在Linux環境下通過Kill -3嚇唬虛擬機生成Dump文件。
- (可以查看finalize執行隊列)
- jhat
- (虛擬機堆轉儲快照分析工具)
- 可以與jamp搭配使用,來分析jmap生成的堆轉儲快照
- Jstack
- (Java堆棧跟蹤工具)
- 用於生成虛擬機當前時刻的線程快照。
- 常用方式: jstack -l vmid
- 線程快照:虛擬機中每一條線程正在執行的方法堆棧的集合
- 線程快照的目的:定位線程長時間停頓的原因(線程死鎖,死循環等)