带有并发标记扫描gc暂停问题的jdk8内存调优



我们从JVM的设置开始,设置为(我继承了它,除了尝试增量模式外,没有修改它)。。。。

-XX:+UseConcMarkSweepGC
-XX:ParallelGCThreads=1

我们在两个虚拟的cpu上。我想要更多的gc暂停或其他什么,而不是一个让世界停止的落后。据推测,CMSIncrementalMode已被弃用,尽管我无论如何都尝试过,但它没有起作用。

我正努力摆脱https://docs.oracle.com/javase/8/docs/technotes/guides/vm/gctuning/cms.html

我很难理解他们所说的占空比是什么意思。我只是想要更多的停顿,而不是一个大的停顿。我如何调整命令来实现这一点?

尽管文档中指出"注意,Java SE 8中不赞成使用增量模式,可能会在未来的主要版本中删除",但如果现在需要,我不介意使用增量模式。

关于如何配置或它们所说的占空比是什么意思,有什么想法吗?

注意:我们每两周部署一次,所以即使在部署之后,我也不希望在调整速度时出现大的gc暂停。

谢谢,Dean

如果使用G1GC,则可以使用XX:MaxGCPauseMillis,如果不需要默认值,则可以设置较低的值。