zoukankan      html  css  js  c++  java
  • JVM常用参数整理

    参数分类

    1. 以-开头,标准参数,所有的JVM实现都必须实现这些参数的功能,且向后兼容
      如:-verbose:gc、-verbose:class等

    2. 以-X开头,非标准参数,默认jvm实现这些参数的功能,但是并不保证所有jvm实现都满足,且不保证向后兼容
      如-Xms256m -Xmx512m等

    3. 以-XX开头,非stable参数,此类参数各个jvm实现会有所不同,但其中不少参数实用性很强
      如-XX:NewRatio=2 -XX:-UseParallelGC -XX:+HeapDumpOnOutOfMemoryError等

    常用参数

    • 内存相关

      -Xms:最小堆大小,如-Xms256m

      -Xms:最大堆大小,如-Xmx512m

      -Xmn:新生代大小,如-Xmn是64m

      -XX:NewRatio:新生代与老年代的比例,如–XX:NewRatio=2,老年代过大的时候,Full GC的时间会很长;老年代过小,则很容易触发Full GC,Full GC频率过高。

      -XX:SurvivorRation:设置Eden与Srivivor的大小比例,如-XX:SurvivorRation=8,代表1个Survivor是Eden的1/8,是整个新生代的1/10。

      -Xss:每个线程堆栈大小,如-Xss1m,每个线程都有独立的栈空间,局部变量、参数分配在栈上

      -XX:PermSize: 指JDK1.6定永久代最小内存值,如-XX:PermSize=64M

      -XX:MaxPermSize : 指JDK1.6定永久代最大内存值,如-XX:MaxPermSize=512M

      -XX:MetaspaceSize :指JDK1.7及以后Metaspace扩容时触发FullGC的初始化阈值

      -XX:MaxMetaspaceSize:指JDK1.7及以后Metaspace扩容时触发FullGC的最大阈值

    • GC相关

      -verbose:gc:记录GC运行以及运行时间,用于查看GC是否是应用的瓶颈

      -verbose:class:输出jvm载入类的相关信息,用于诊断找不到类或者类冲突

      -XX:+PrintGCDetails:打印GC详细信息

      -XX:-DisableExplicitGC:禁止显式GC,即禁止程序中System.gc()

      -XX:-UseParallelGC:启用并行GC

      -XX:+UseParNewGC:新生代使用ParNew回收器,老年代使用串行回收器

      -XX:+UseConcMarkSweepGC:新生代使用ParNew回收器,老年代使用CMS回收器

    • 项目常用

      -XX:+HeapDumpOnOutOfMemoryError:OOM时导出堆快照到文件

      -XX:+HeapDumpPath,OOM时导出文件路径

      -XX:OnOutOfMemoryError:OOM时操作,比如如执行脚本发送邮件

      -XX:+TraceClassLoading:打印加载类的详细信息

  • 相关阅读:
    Centos7 keepalived 修改日志路径
    mysql 双主复制 centos7
    CentOs 7 安装mysql5.7.18(二进制版本)
    oracle、mysql新增字段,字段存在则不处理
    mysql+ibatis 批量插入
    oracle+ibatis 批量插入-支持序列自增
    oracle 批量插入-支持序列自增
    sftp上传
    java
    mysql
  • 原文地址:https://www.cnblogs.com/cdfive2018/p/12320687.html
Copyright © 2011-2022 走看看