JVM常見命令與參數設置

  1. jps,查看正在運行的Java進程,如jps -l

  2. jstack + “進程號”,分析該Java進程的棧空間情況

  3. jinfo + “-flag” + “參數” + “進程號”,查看該Java進程的該項參數的大小(K-V型)或者是否開啓了(是否型)

  4. jinfo + “-flags” + “進程號”,查看該Java進程的所有相關係數情況

  5. jconsole,調出Java可視化監控管理器

  6. javac + “java文件名(有.java後綴)”,將Java文件編譯成class文件

  7. javap + “class文件名(沒.class後綴)”,將class文件反編譯成彙編語言

  8. -Xmx,等價於 -XX:MaxHeapSize,最大堆內存,一般爲運行內存的 1/4

  9. -Xms,等價於-XX:InitialHeapSize,初始化堆內存大小

  10. -Xss,等價於-XX:ThreadStackSize,單個線程棧空間的大小

  11. -XX:MetaspaceSize,設置元空間的內存大小

  12. -XX:+PrintGCDetails:開啓打印輸出GC的工作日誌

  13. -XX:+TraceClassLoading,開啓追蹤類加載時的日誌

  14. -XX:+TraceClassUnloading,開啓追蹤類卸載時的日誌

  15. -XX:SurvivorRatio,JVM堆內存中的年輕代的Eden、From、To的比例,默認爲8,即8:1:1

  16. -XX:NewRatio,JVM堆內存中的年輕代和老年代的比列,默認是2,即1:2

  17. -XX:MaxTenuringThreshold,對象從新生代到老年代的年齡閾值(K-V型,沒有+號,直接使用=賦值)

  18. java -XX:+PrintFlagsInitial,該命令可以查看JVM “初始” 所有啓動參數的值(但是有些參數大小會根據實際機型內存等變化)
    如: “初始” 最大堆內存,uintx MaxHeapSize = 130862280 {product}

  19. java -XX:+PrintFlagsFinal,該命令查看JVM “最終” 所有啓動參數的值(有變化用 := 表示);
    如: “最終”最大堆內存(內存的1/4,本機內存12G)
    uintx MaxHeapSize := 3187671040 {product}

(但是有些參數大小會根據實際機型內存等變化)在這裏有體現。

這部分JVM參數都是XX型的,-XX:,是否型使用+或-分別表示開啓或者關閉;賦值型,沒有+、-,直接使用“參數=值”的形式

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章