美文网首页
JVM调优常用参数介绍

JVM调优常用参数介绍

作者: 花醉霜寒 | 来源:发表于2020-01-13 20:10 被阅读0次

\color{green}{GC日志系列}

  • -XX:+PrintGC #输出GC日志
  • -XX:+PrintGCDetails #打印GC详细日志
  • -XX:+PrintGCDateStamps #输出绝对时间
  • -XX:+PrintHeapAtGC #在进行GC前后打印堆信息
  • -Xloggc:/opt/lx/gc.log #GC日志文件路径,目录/Users/ouyang必须存在
  • -XX:+HeapDumpOnOutOfMemoryError #发生OOM时备份heapdump文件
  • -XX:HeapDumpPath=/Users/ouyang #配置OOM时heapdump文件生成路径

\color{green}{堆空间大小系列}

  • -XX:SurvivorRatio=8 #指定Eden与Survivor的大小比例为8:1,即Eden为8m,每个Survivor为1m
  • -XX:PermSize=32m #设置永久代初始内存为32m
  • -XX:MaxPermSize=32m #指定永久代最大内存为32m
  • -XX:MetaspaceSize=32m #设置元空间初始内存为32m
  • -XX:MaxMetaspaceSize=32m #指定元空间最大内存为32m
  • -XX:PretenureSizeThreashold #设置能够分配到新生代的最大对象大小,如果大小超过该值,则对象直接进入老年代,默认为0,即无论对象多大,首先都在新生代分配内存
  • -XX;HandlePromotionFailure #内存分配担保相关,JDK 6 Update 24版本之后废弃掉了这个参数

\color{green}{CMS收集器系列}

  • -XX:+UseConcMarkSweepGC #使用CMS收集器
  • -XX:+UseParNewGC #轻年代使用ParNew收集器
  • -XX:CMSInitiatingOccupancyFraction=60 #设置CMS老年代回收周期阀值为60%
  • -XX:+UseCMSInitiatingOccupancyOnly #强制CMSInitiatingOccupancyFraction生效
  • -XX:PretenureSizeThreshold=1m #设置大于1m的对象直接在老年代分配,只对Serial和ParNew两款收集器有效。
  • -XX:+UseCMSCompactAtFullCollection #开启对年老代的压缩
  • -XX:CMSFullGCsBeforeCompaction=10 #上面配置开启的情况下,这里设置多少次Full GC后,对年老代进行压缩
  • -XX:+CMSParallelRemarkEnabled #配置重新标记(CMS-remark)阶段并行执行,默认开启
  • -XX:+CMSScavengeBeforeRemark #配置重新标记(CMS-remark)前强制一次Minor GC,默认关闭
  • -XX:ConcGCThreads=8 #配置CMS周期并发线程数为8
  • -XX:+CMSFullGCsBeforeCompaction=n #设置在执行n次full GC后进行一次空间碎片整理
  • -XX:+UseCMSCompactAtFullCollection #强制jvm在full gc后进行空间碎片整理

\color{green}{Parallel Scavenge + Parallel Old收集器组合系列}

  • -XX:+UseParallelGC #使用Parallel Scavenge + Parallel Old收集器
  • -XX:+UseAdaptiveSizePolicy #开启自适应特性,默认开启
  • -XX:+PrintAdaptiveSizePolicy #GC日志中输出自适应调节信息,仅对Parallel Scavenge + Parallel Old收集器有效
  • -XX:MaxGCPauseMillis=2000 #配置GC最大停顿为2秒
  • -XX:GCTimeRatio=99 #配置垃圾收集时间占比为1%

\color{green}{G1收集器系列}

  • -XX:+UseG1GC #使用G1收集器
  • -XX:G1HeapRegionSize=1m #设置Region块大小为1m,合法范围1m ~ 32m
  • -XX:MaxGCPauseMillis=200 #设置预期停顿时间为200ms
  • -XX:G1NewSizePercent=5 #设置轻年代最小空间占比为5%
  • -XX:G1MaxNewSizePercent=60 #设置轻年代最大空间占比为60%
  • -XX:InitiatingHeapOccupancyPercent=45 #配置触发标记周期的Java堆占用率阈值为45%
  • -XX:G1MixedGCLiveThresholdPercent=65 #配置混合垃圾回收周期中要包括的旧区域设置占用率阈值为65%
  • -XX:G1HeapWastePercent=10 #设置愿意浪费的堆百分比为10%
  • -XX:G1ReservePercent=10 #设置作为空闲空间的预留内存百分比为10%
  • -XX:ConcGCThreads=4 #设置并行标记的线程数为4。

\color{green}{类加载系列}

  • -Xbootclasspath #追加BootStrapClassLoader加载的路径
  • -XX:+TraceClassLoading #查看启动时加载了哪些类,解决类冲突时比较管用

相关文章

  • JVM GC调优入门

    JVM GC调优入门 这篇文章会介绍几个常用的调优参数,再通过两个案例介绍如何进行JVM GC调优。阅读这篇文章的...

  • JVM调优常用参数介绍

    -XX:+PrintGC #输出GC日志 -XX:+PrintGCDetails #打印GC详细日志 -XX:+P...

  • Java 应用如何调优?

    一、节点配额和内核参数调整 JVM 配置常用参数 堆参数 回收器参数 项目中常用配置 常用组合 常用 GC 调优策...

  • JVM调优参数介绍

    是指设定程序启动时占用内存大小。一般来讲,大点,程序会启动的快一点,但是也可能会导致机器暂时间变慢-Xms7168...

  • JVM 高频面试题

    本章面试题如下:JVM三大性能调优参数,JVM 几个重要的参数JVM调优JVM内存管理,JVM的常见的垃圾收集器,...

  • JVM调优常用参数

    1、调优的目的 1.控制GC的行为GC是一个后台处理,但是它也是会消耗系统性能的,因此经常会根据系统运行的程序的特...

  • JVM调优常用参数

    JVM调优常用参数 内存调优 **设置heap大小这个非常重要,通常只要这里设置够了,就不会出现溢出。''-Xms...

  • JVM常用调优参数

    -Xms: 初始大小内存 ,默认为物理内存1/64 等价于 -XX:InitialHeapSize -Xmx:最大...

  • jvm监控与调优之jdk命令行工具

    jvm监控与调优之jdk命令行工具 目录 jvm监控与调优之jdk命令行工具jvm的参数类型标准参数X参数XX参数...

  • 02. 基于JDK命令行工具的监控

    JVM与调优 imooc JVM Markdown JVM参数类型 标准参数 -help-server -cli...

网友评论

      本文标题:JVM调优常用参数介绍

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