JVM 調優和參數配置,如何盤點查看 JVM 系統默認值

🍀JVM 的參數類型

📌標配參數

  • -version
  • -help
  • java -showversion
    在這裏插入圖片描述
在 jdk 各個版本之間穩定,很少有大的變化

📌 x 參數(瞭解)

  • -Xint: 解釋執行
  • -Xcomp: 第一次使用就編譯成本地代碼
  • -Xmixed: 混合模式
    在這裏插入圖片描述

📌 xx 參數

⏳ Boolean 類型

公式-XX:+ 或者 - 某個屬性值(+表示開啓 -表示關閉)
Case:
是否打印 GC 收集細節
-XX:-PrintGCDetails
在這裏插入圖片描述
-XX:+PrintGCDetails
在這裏插入圖片描述

是否使用串行垃圾回收器
-XX:-UseSerialGC
-XX:+UseSerialGC


⏳ KV 設值類型

公式:-XX:屬性key=屬性值value
Case
-XX:MetaspaceSize=128m
-XX:MaxTenuringThreshold=15


⏳ jinfo 舉例,如何查看當前運行程序的配置

公式:jinfo -flag 配置項 進程編號
Case1
在這裏插入圖片描述
Case2
在這裏插入圖片描述
Case3
在這裏插入圖片描述


題外話(坑題)

兩個經典參數:-Xms 和-Xmx
-Xms:等價於 -XX:InitialHeapSize
-Xmx:等價於 -XX:MaxHeapSize


🍀盤點家底查看 JVM 默認值

📌 -XX:+PrintFlagsInitial

⏳ 主持要查看初始默認
⏳ 公式

java -XX:+PrintFlagsInitial -version
java -XX:+PrintFlagsInitial

⏳ Case

在這裏插入圖片描述

📌 -XX:+PrintFlagsFinal

⏳ 主要查看修改更新
⏳ 公式

java -XX:+PrintFlagsFinal -version
java -XX:+PrintFlagsFinal

⏳ Case

在這裏插入圖片描述

= 表示沒有修改,:= 表示人爲改過、JVM加載過

📌 PrintFlagsFinal 舉例,運行 java 命令的同時打印出參數

⏳ java -XX:+PrintFlagsFinal -Xss128k T(T的運行的 java 類名字)

📌 -XX:+PrintCommandLineFlags

⏳ 打印命令行參數
⏳ Case在這裏插入圖片描述
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章