• JVM调优常用参数设置


    JVM 调优

    JVM常用参数

    Xss:每个线程的栈大小

    Xms:堆空间的初始值

    Xmx:堆空间最大值、默认为物理内存的1/4,一般Xms与Xmx最好一样

    Xmn:年轻代的大小

    XX:NewRatio :新生代和年老代的比例

    XX:SurvivorRatio :伊甸园区和幸存区的占用比例

    XX:PermSize:设定内存的永久保存区域(1.8已废除)

    XX:MetaspaceSize:1.8使用此参数替代上述参数

    XX:MaxPermSize:设定最大内存的永久保存区域(1.8已废除)

    XX:MaxMetaspaceSize:1.8使用此参数替代上述参数

    堆设置 

    -Xms :初始堆大小

    -Xmx :最大堆大小

    -XX:NewSize=n :设置年轻代大小

    -XX:NewRatio=n: 设置年轻代和年老代的比值。如:为3,表示年轻代与年老代比值为1:3,年轻代占整个年轻代年老代和的1/4

    -XX:SurvivorRatio=n :年轻代中Eden区与两个Survivor区的比值。注意Survivor区有两个。如:3,表示Eden:Survivor=3:2,一个Survivor区占整个年轻代的1/5

    -XX:MaxPermSize=n :设置持久代大小

    收集器设置 

    -XX:+UseSerialGC :设置串行收集器

    -XX:+UseParallelGC :设置并行收集器

    -XX:+UseParalledlOldGC :设置并行年老代收集器

    -XX:+UseConcMarkSweepGC :设置并发收集器

    垃圾回收统计信息 

    -XX:+PrintHeapAtGC GC的heap详情

    -XX:+PrintGCDetails  GC详情

    -XX:+PrintGCTimeStamps  打印GC时间信息

    -XX:+PrintTenuringDistribution    打印年龄信息等

    -XX:+HandlePromotionFailure   老年代分配担保(true  or false)

    并行收集器设置 

    -XX:ParallelGCThreads=n :设置并行收集器收集时使用的CPU数。并行收集线程数。

    -XX:MaxGCPauseMillis=n :设置并行收集最大暂停时间

    -XX:GCTimeRatio=n :设置垃圾回收时间占程序运行时间的百分比。公式为1/(1+n)

    并发收集器设置 

    -XX:+CMSIncrementalMode :设置为增量模式。适用于单CPU情况。

    -XX:ParallelGCThreads=n :设置并发收集器年轻代收集方式为并行收集时,使用的CPU数。并行收集线程数。

    出现内存泄漏的时候会有两种情况,这种错误又分两种:java.lang.OutOfMemoryError: Java heap space和java.lang.OutOfMemoryError: PermGen space。

    引起这种错误的原因可能是程序问题,也可能是是JVM参数配置问题引起的。

    若是参数问题,前者可以通过配置-Xms和-Xmx参数来设置,而后者可以通过配置 -XX:PermSize和-XX:MaxPermSize来设置。

     

  • 相关阅读:
    自注意力中的不同的掩码介绍以及他们是如何工作的?
    sklearn 中的两个半监督标签传播算法 LabelPropagation和LabelSpreading
    Linux 操作指令
    在 KubeSphere 中使用 DevOps 部署 Java 微服务配置监控预警
    Hbase学习
    Linux系统swappiness参数在内存与交换分区之间优化作用
    Linux shell中2>&1的含义解释
    kafka 学习
    Grafana 重置admin密码
    linuxsource: not found ubuntu执行脚本报错
  • 原文地址:https://www.cnblogs.com/weigy/p/12579283.html
Copyright © 2020-2023  润新知