zoukankan      html  css  js  c++  java
  • JVM参数说明

     ===========================================================

    -XX 开头,这些是 JVM 的所有实现 都支持的 最常用的选项
    ===========================================================

    bool类型的开关选项(+开启、-关闭)

    -XX:+UseG1GC

      使用G1GC
    -XX:+PreserveFramePointer  

      使用FP寄存器来保存帧指针,而不是作为通用寄存器。解决了stack不完整的问题
    -XX:+PrintGC

      打印简单GC日志
    -XX:+PrintGCDetails

      打印详细GC日志
    -XX:+PrintGCDateStamps

      显示每次GC的日期时间
    -XX:+UseGCLogFileRotation

      GC日志文件循环使用(比如,5个日志文件循环使用)
    -XX:+HeapDumpOnOutOfMemoryError 

      可以让JVM在出现内存溢出时候Dump出当前的内存转储快照
    -XX:-OmitStackTraceInFastThrow
      关闭栈异常信息快速抛出,从而记录详细的栈异常以便跟踪。

    各种配置的键值
    -XX:MetaspaceSize=128m
      元空间的初始大小,不断扩容并首次超过这个值时会进行FGC,JVM会动态调整这个值
    -XX:MaxMetaspaceSize=256m
      元空间的最大值,超过最大值时会抛异常出来,加载的类越多,元空间使用的内存越多,元空间使用 Native Memory。
    -XX:MaxGCPauseMillis=200
      最大GC暂停时间,用户可以设置这个值,G1GC尽量保证软实时性
    -XX:ParallelGCThreads=4
      最大并行GC线程数
    -XX:ConcGCThreads=4
      最大并发GC线程数
    -XX:MinHeapFreeRatio=30
      指定空闲堆空间的最小百分比,如果实际空闲堆空间小于此值则需要对堆进行扩容 ,Xmx==Xms 的情况下无效
    -XX:MaxHeapFreeRatio=50
      指定空闲堆空间最大百分比 ,如果实际空闲堆空间大于此值则需要对对堆空间进行缩容,Xmx==Xms 的情况下无效
    -XX:CICompilerCount=3
    -XX:NumberOfGCLogFiles=5
      GC日志文件数,可以设置循环使用
    -XX:GCLogFileSize=32M
      每个GC日志文件的默认大小
    -XX:HeapDumpPath=/opt/logs/appid
      堆转储快照文件保存的路径
     

    ===========================================================

    -X 开头,这些选项是特定于 Java HotSpot 虚拟机通用选项
    ===========================================================
    -Xmx6144m
      JVM 最大堆内存
    -Xms3686m
      JVM 初始堆内存
    -Xss256k
      设置属于每个线程的栈大小
    -Xloggc:/opt/logs/appid/gc.log
      GC日志文件保存的路径 

    ===========================================================

    -D开头,设置系统属性值(属性名称=属性值)
    ===========================================================
    -Djava.util.logging.config.file=/opt/tomcat/conf/logging.properties
    -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager
    -Dport.http.server=8080
    -Dport.shutdown.server=8081
    -Ddocbase.server=/opt/app
    -Dvdir.server=
    -Djava.security.egd=file:/dev/./urandom
    -Dcom.sun.management.jmxremote.authenticate=false
    -Dcom.sun.management.jmxremote.ssl=false
    -Djava.rmi.server.hostname=192.168.0.1
    -Dcom.sun.management.jmxremote
    -Dcom.sun.management.jmxremote.port=8780
    -Dcom.sun.management.jmxremote.rmi.port=8780
    -Dcom.sun.management.jmxremote.local.only=false
    -Djdk.tls.ephemeralDHKeySize=2048
    -Dignore.endorsed.dirs=
    -Dcatalina.base=/opt/tomcat
    -Dcatalina.home=/opt/tomcat
    -Djava.io.tmpdir=/opt/tomcat/temp
    -Djava.util.concurrent.ForkJoinPool.common.parallelism=4

    作者:leon66666
    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利.
  • 相关阅读:
    shell编程基础进阶
    Ansible自动化配置详解
    sersync实时同步实战
    NFS网络文件系统详解
    CentOS7下rsync服务的基本详解和使用
    CentOS7版本基础使用
    网络基础-交换机、路由器、OSI7层模型
    linux-sed命令
    Cause: java. lang.InstantiationException: tk.mybatis.mapper.provider.base.BaseInsertProvider
    Spring Boot MyBatis注解:@MapperScan和@Mapper
  • 原文地址:https://www.cnblogs.com/wangzhongqiu/p/15475671.html
Copyright © 2011-2022 走看看