美文网首页
JVM-参数调试

JVM-参数调试

作者: GIT提交不上 | 来源:发表于2020-03-10 18:40 被阅读0次

      JVM参数类型:1)标配参数 2)X参数 3)XX参数。
      标配参数:1)-version 2)-help 3)java -showversion。
      X参数:1)-Xint 2)-Xcomp 3)-Xmixed。
      XX参数:

    • Boolean类型 +/-
    • KV设置类型

      如何查看一个正在运行的java程序,它的某个JVM参数是否开启?具体值?

    jps -l
    jinfo -flag PrintGCDetails 18004  //-XX:-PrintGCDetails
    jinfo -flags 18004
    
    -Xms  等价于 -XX:InitialHeapSize  //初始堆内存大小,默认为物理内存的1/64。
    -Xmx  等价于 -XX:MaxHeapSize  //最大分配内存,默认为物理内存的1/4。
    
    //查看 JVM初始化参数
    java -XX:+PrintFlagsInitial
    //查看修改和更新
    java -XX:+PrintFlagsFinal -version  // = :=
    

      运行java命令的同时打印参数:

    java -XX:+PrintFlagsFinal -Xss128k T
    
    java -XX:+PrintCommandLineFlags -version  //以命令行的形式查看JVM参数
    
    -Xss  等价于  -XX:ThreadStackSize  //栈空间大小,512K~1024K
    
    -XX:MetaspaceSize=1024m  //元空间不在虚拟机中,而是使用本地内存
    
    -XX:+UseParallelGC  //并行垃圾回收器
    
    //配置参数--
     -XX:+PrintCommandLineFlags
    
    -XX:InitialHeapSize=265650752 
    -XX:MaxHeapSize=4250412032 
    -XX:+PrintCommandLineFlags 
    -XX:+UseCompressedClassPointers 
    -XX:+UseCompressedOops 
    -XX:-UseLargePagesIndividualAllocation 
    -XX:+UseParallelGC 
    
    //配置JVM参数:-Xms10m -Xmx10m -XX:+PrintGCDetails
    /**
     * @author luffy
     **/
    public class GCDemo {
        public static void main(String[] args){
            System.out.println("GC");
            Byte[] bytes = new Byte[20*1024*1024];
        }
    }
    
    图1-1 GC日志信息.png
    -XX:SurvivorRatio=8  //新生代Eden和Survivor(From/To)比例,8:1:1。
    -XX:NewRatio=2  //新生代:老年代 = 1:2,老年代的占比。(堆内)
    
    图1-2 堆内存.png
    -XX:MaxTenuringThreShold=15  //设置垃圾最大年龄 0~15
    

    JVM常用参数

    相关文章

      网友评论

          本文标题:JVM-参数调试

          本文链接:https://www.haomeiwen.com/subject/pqtmdhtx.html