图解JDK命令行工具实例教程
? ? JDK附帶有很多命令行工具,下面先整一下監視虛擬機和故障處理的命令行。
?
一 jps - 虛擬機進程狀況工具
? ? jps不帶參數,顯示虛擬機進程ID和主類名稱或jar名稱;
? ? 進入命令行,敲入jps;如圖;
第一次敲入時,沒有java程序啟動運行;只顯示jsp本身的ID;
然后啟動兩個java程序,一個套接字示例,2個程序,一個服務器,一個客戶端;
第二次敲jps,如圖,顯示了2個java程序的ID;
然后啟動tomcat,運行一個JSP頁面;該頁面只是連接mysql數據庫,讀取一個表的數據并顯示;
第三次敲入jps,又顯示出了web程序的ID;
?
?
-q 參數,只顯示ID;
-m參數,顯示傳遞給主類main()函數的參數;
-l參數,輸出主類的全名或者jar包的路徑;
-v參數,輸出虛擬機進程啟動時JVM參數;
?
?
二 jstat - 虛擬機統計信息監視工具
? ? 以下輸入的ID是一中用jps列出的。
1.
-class,統計classloader的行為;下例間隔200毫秒,顯示5次;
?
2464是web程序,5044是控制臺程序;由上圖可見;都是小程序;web程序載入的類要多不少;
loaded是讀入類的數量,bytes是字節數;
?
2 -gc
? ? 統計gc行為
?
? ? S0C, S1C是S0、S1的容量,單位KB;C是容量,U是使用;后面的也;
? ? YGC-young代gc的次數;YGCT,時間;FGC,full gc的次數;GCT,垃圾收集的總時間。
? ? 上圖顯示的情況表明,一個小的控制臺程序跑起來,如果就放在那不動,它就沒什么垃圾收集行為;一個小的web程序跑起來,會有一定的垃圾收集行為;
?
3 -gccapacity - 統計堆中代的容量,空間
? ? 頭三個:年輕代的最小、最大、當前容量;其他類似;最后2個是年輕代GC次數和總GC次數
?
三 jinfo - 配置信息工具
? ? -flags,列出各種VM標識;
?
四 jstack - 堆棧跟蹤工具
? ? 先看下2464的堆棧,輸入 jstack -l 2464 后顯示堆棧,很長;這是web程序的; 下面是其中的兩頁;
?
?
?
下面是5044的堆棧,控制臺程序的,沒那么長;下面是其中的兩頁;
?
《新程序員》:云原生和全面數字化實踐50位技術專家共同創作,文字、視頻、音頻交互閱讀總結
以上是生活随笔為你收集整理的图解JDK命令行工具实例教程的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 图解SQL Server 存储过程教程一
- 下一篇: WCF源码分析