常用的JVM配置参数说明

在这里插入图片描述
工作中常用的JVM参数配置,以Java8为例:

日志相关

  1. -XX:+PrintFlagsFinal,打印JVM所有参数的值

  2. -XX:+PrintGC,打印GC信息

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

  4. -XX:+PrintGCTimeStamps,打印GC 的时间戳

  5. -Xloggc:filename,设置GClog文件的位置

  6. -XX:+PrintTenuringDistribution,查看熬过收集后剩余对象的年龄分布信息
    在这里插入图片描述

内存设置相关

  1. -Xms,设置堆的初始化内存大小

  2. -Xmx,设置堆的最大内存

  3. -Xmn,设置新生代内存大小

  4. -Xss,设置线程栈大小

  5. -XX:NewRatio,新生代与老年代比值

  6. -XX:SurvivorRatio,新生代中Eden 区与两个Survivor区的比值,默认为8, 即Eden:Survivor:Survivor=8:1:1

  7. -XX:MaxTenuringThreshold,从年轻代到老年代,最大晋升年龄。 CMS下 默认为6,G1 下默认为15

  8. -XX:MetaspaceSize,设置元空间的大小,第一次超过将触发GC

  9. -XX:MaxMetaspaceSize,元空间最大值

  10. -XX:MaxDirectMemorySize,用于设置直接内存的最大值,限制通过 DirectByteBuffer 申请的内存

  11. -XX:ReservedCodeCacheSize,用于设置JIT编译后的代码存放区大小, 如果观察到这个值有限制,可以适当调大, 一般够用即可
    在这里插入图片描述

垃圾收集相关

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

  2. -XX:+UseParalleIGC,设置并行收集器

  3. -XX:+UseConcMarkSweepGC,使用CMS收集器

  4. -XX:GC 设 置 P r GC的线程数

  5. -XX:MaxGCPauseMillis,GC最大暂停时间ms

  6. -XX:+UseG1GC,使用G1垃圾收集器

G1垃圾回收器相关

  1. -XX:MaxGCPauseMillis,用于设置目标停顿时间, G1会尽力达成

  2. -XX:G1HeapRegionsize,用于设置小堆区大小

  3. -XX:lnitiatingHeapOccupancyPercent,表示当整个堆内存使用达到一定比例(默认是45%),并发标记阶段就会被启动

  4. -XX:ConcGCThreads,表示并发垃圾收集器使用的线程数量,默认值随JVM运行的平台不同而变动

CMS垃圾回收器相关

  1. -XX:+UseCMSInitiatingOccupancyOnly

  2. -XX:CMSInitiatingOccupancyFraction,与前者配合使用,指定MajorGC的发生时机

  3. -XX:+ExplicitGClnvokesConcurrent,代码调用System .gc()开始并行FullGC

  4. -XX:+CMSScavengeBeforeRemark,表示开启或关闭在CMS重新标记阶段之前的清除(YGC)尝试,它可以降低remark时间

  5. -XX:+ParallelRefProcEnabled,可以用来并行处理Reference, 以加快处理速度,缩短耗时

说明

以上的内容为基本上常见的,如果你想设置更多的参数,可以参考官方网站:JVM参数查询

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

沛哥儿

您的鼓励是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值