iT邦幫忙

2021 iThome 鐵人賽

DAY 9
0
自我挑戰組

展開JDK工具的30天應用之旅系列 第 9

Day9-JDK性能監控工具:jstat(下)

延續著上篇內容,這篇要來介紹的是jstat中的option有哪些參數可以使用

jstat -<option> [-t] [-h<lines>] <vmid> [<interval>[<count>]]

options介紹

jstat中可使用的參數,可以分為三大類,Oracle官網文件其實並沒有分類,但我覺得經過分類,對我來說,會比較容易記憶。

  1. 類加載相關

  • -class

  1. 垃圾回收相關

  • -gc

  • -gccapacity

  • -gcutil

  • -gccause

  • -gcnew

  • -gcnewcapacity

  • -gcold

  • -gcoldcapacity

  • -gcpermcapacity

  1. JIT相關(Just In Time,即時編譯)

  • -compiler

  • -printcompilation


以下為示範內容

Step.1準備一個JstatTwoTest.java檔案,程式碼如下:

package Controller;

import java.util.ArrayList;

public class JstatTwoTest{

  public static void main(String[] args) throws InterruptedException{
    Thread.sleep(15000);
    ArrayList<String[]> list = new ArrayList<>();
    for(int count = 0;count<9;count++) {
	    for(int x = 0;x<1001;x++){
	    	String[] arr = new String[512*x];
	    	list.add(arr);
	    	Thread.sleep(100);
	     }
	    System.gc();
	    System.out.print("rest");
	    Thread.sleep(10000);
    }
  }
}

Step2.將程式碼進行編譯並且執行

編譯與執行的指令說明,請參考Day4-java語言編譯器:javac & 運行工具:java (上)

Step3.要進行查看jstat前,須先知道要查看哪個HotSpot進程

透過jps查看,請參考Day7-JDK查看正在運行的Java進程工具:jps

Step4.jstat指令應用

  1. 類加載相關

  • -class:顯示與類加載有關行為的統計數據

https://ithelp.ithome.com.tw/upload/images/20210924/20140481NLuynH4T0K.png

  1. 垃圾回收相關

  • -gc:顯示有關垃圾回收行為的統計數據

https://ithelp.ithome.com.tw/upload/images/20210924/201404818lmgfFguzq.png

  • -gccapacity

https://ithelp.ithome.com.tw/upload/images/20210924/20140481BR7k5eJI60.png

  • -gcutil

https://ithelp.ithome.com.tw/upload/images/20210924/20140481IYrcIyMpDp.png

  • -gccause

https://ithelp.ithome.com.tw/upload/images/20210924/20140481C0JKTe8MHR.png

  • -gcnew

https://ithelp.ithome.com.tw/upload/images/20210924/20140481WXHTGV6svK.png

  • -gcnewcapacity

https://ithelp.ithome.com.tw/upload/images/20210924/20140481mtNEwTHfSR.png

  • -gcold

https://ithelp.ithome.com.tw/upload/images/20210924/2014048127Wz6q4X1D.png

  • -gcoldcapacity

https://ithelp.ithome.com.tw/upload/images/20210924/20140481ZKCD7TmX5H.png

  • -gcmetacapacity

https://ithelp.ithome.com.tw/upload/images/20210924/20140481azz83iLpwC.png

  1. JIT相關(Just In Time,即時編譯)

  • -compiler:顯示有關JIT編譯過的方法、耗時等統計數據

https://ithelp.ithome.com.tw/upload/images/20210924/20140481rH50dqjCmA.png

  • -printcompilation:顯示JVM編譯方法的統計數據

https://ithelp.ithome.com.tw/upload/images/20210924/20140481tEZa20vCE5.png


上一篇
Day8-JDK性能監控工具:jstat(上)
下一篇
Day10-JDK查看虛擬機配置訊息工具:jinfo
系列文
展開JDK工具的30天應用之旅30

尚未有邦友留言

立即登入留言