JVM常见参数
  rLAf8XkvFNw9 2023年11月05日 106 0

一: JDK8的JVM启动参数默认配置

-Xms2g -Xmx2g  (按不同容器,4G及以下建议为50%,6G以上,建议设置为70%)

-XX:MetaspaceSize=128m

-XX:MaxMetaspaceSize=512m

-Xss256k

-XX:+UseG1GC

-XX:MaxGCPauseMillis=200

-XX:AutoBoxCacheMax=20000

-XX:+HeapDumpOnOutOfMemoryError   (当JVM发生OOM时,自动生成DUMP文件)

-XX:HeapDumpPath=/data/logs/gc/

-XX:ErrorFile=/data/logs/gc/hs_err_%p.log   (当JVM发生崩溃时,自动生成错误日志)

-XX:+PrintGCApplicationStoppedTime

-XX:+PrintGCDetails

-XX:+PrintGCDateStamps

-Xloggc:/data/logs/gc/gc-ePrint-service.log

二:基本参数

JVM常见参数_G1

三:G1相关参数

JVM常见参数_老年代_02

附:G1GC的详细过程

G1提供了两种GC模式,Young GC和Mixed GC,两种都是Stop The World(STW)的。

1. Young GC

Young GC主要是对Eden区进行GC,它在Eden空间耗尽时会被触发。在这种情况下,Eden空间的数据移动到Survivor空间中,如果Survivor空间不够,Eden空间的部分数据会直接晋升到年老代空间。Survivor区的数据移动到新的Survivor区中,也有部分数据晋升到老年代空间中。最终Eden空间的数据为空,GC停止工作,应用线程继续执行。

2. Mixed GC

Mix GC不仅进行正常的新生代垃圾收集,同时也回收部分后台扫描线程标记的老年代分区。

它的GC步骤分2步: 全局并发标记(global concurrent marking) 拷贝存活对象(evacuation)

在进行Mix GC之前,会先进行global concurrent marking(全局并发标记)。 在G1 GC中,它主要是为Mixed GC提供标记服务的,并不是一次GC过程的一个必须环节。

global concurrent marking的执行过程分为五个步骤:

初始标记(initial mark,STW)在此阶段,G1 GC 对根对象进行标记。该阶段与常规的 (STW) 年轻代垃圾回收密切相关。

根区域扫描(root region scan)G1 GC 在初始标记的存活区扫描对老年代的引用,并标记被引用的对象。该阶段与应用程序(非 STW)同时运行,并且只有完成该阶段后,才能开始下一次 STW 年轻代垃圾回收。

并发标记(Concurrent Marking)G1 GC 在整个堆中查找可访问的(存活的)对象。该阶段与应用程序同时运行,可以被 STW 年轻代垃圾回收中断

最终标记(Remark,STW)该阶段是 STW 回收,帮助完成标记周期。G1 GC 清空 SATB 缓冲区,跟踪未被访问的存活对象,并执行引用处理。

清除垃圾(Cleanup,STW)在这个最后阶段,G1 GC 执行统计和 RSet 净化的 STW 操作。在统计期间,G1 GC 会识别完全空闲的区域和可供进行混合垃圾回收的区域。清理阶段在将空白区域重置并返回到空闲列表时为部分并发。

Young GC:选定所有新生代里的region。通过控制新生代的region个数来控制young GC的开销。

Mixed GC:选定所有新生代里的region,外加根据global concurrent marking统计得出收集收益高的若干老年代region。在用户指定的开销目标范围内尽可能选择收益高的老年代region。

在G1中,有一种特殊的区域,叫Humongous区域。 如果一个对象占用的空间超过了分区容量50%以上,G1收集器就认为这是一个巨型对象。这些巨型对象,默认直接会被分配在年老代。

【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2023年11月08日 0

暂无评论

推荐阅读
rLAf8XkvFNw9
作者其他文章 更多

2023-11-05