JVM三種類型參數詳解


一、概述

  JVM參數調優是程序員必備的技能,JVM的參數主要分為三種類型:1、標准型:穩定,比如java -version   2、X:相對變化較少的  3、XX:JVM調優的主要部分

二、JVM調優參數

  XX:型參數主要分為如下兩種

  2.1 Boolean類型的

  a、使用方法是:-XX:[+/-] name

    開啟使用+:比如開啟G1垃圾回收期  -XX:+UseG1GC  

    關閉使用-:比如關閉G1垃圾回收期   -XX:-UseG1GC

   b、查看方式

  jps:查看程序的pid

  查看是否開啟JVM參數:jinfo   -flag  name pid 

示例:

 

 

再比如查看新生代向老年代迭代的次數:jinfo -flag MaxTenuringThreshold  pid

 2.2 非boolean類型的:-XX:name= value

 使用方法,比如要設置一個JVM的MetaspaceSize參數:-XX:MetaspaceSize=128m

查看設置后的結果

 

2.3 jinfo命令的使用

進入jdk的安裝命令,查看jinfo的使用幫助:

使用方式:

a、jinfo  -flag name pid

b、jinfo -flags pid

 

 比如想看一個程序的初始化堆的大小:

 jinfo  -flag InitialHeapSize/MaxHeapSize  pid

2.4 PrintFlags系列參數

 -XX:+PrintFlagsInitial

 -XX:+PrintFlagsFinal

使用示例:

java -XX:+PrintFlagsInitial

其中:

 =  表示默認值

:= 表示修改過的

 

 三、幾個特殊的XX參數

 1、-Xms: min 表示的是初始化堆的參數,等同於  -XX:InitialHeapSize

 2、-Xmx:max 表示最大堆參數,等同於  -XX:MaxHeapSize

 3、-Xss              表示線程堆棧的大小      -XX:ThreadStackSize

設置方式中沒有“=”

 

如果JVM虛擬機memory是12G,一般

-XX:MaxHeapSize是 3.2g,為memory的1/4

-XX:InitialHeapSize是 200M,為memory的1/64


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM