有没有办法只在JVM中将GC限制为CPU的某个%?

use*_*695 0 java garbage-collection jvm

问题:优先级高于此特定任务的任务会占用CPU时间并导致一些超时问题.我们在GC完整周期期间经常看到这个问题.那么,有没有办法只在JVM中将GC限制在CPU的某个%?

使用的JVM参数:

wrapper.java.additional.3 = -XX:+ UseConcMarkSweepGC

wrapper.java.additional.4 = -XX:+ ExplicitGCInvokesConcurrent

将wrapper.java.additional.5 = -XX:+ CMSIncrementalMode

wrapper.java.additional.6 = -XX:CMSIncrementalDutyCycle = 50

wrapper.java.additional.7 = -XX:CMSIncrementalDutyCycleMin = 50

Pet*_*rey 5

不,但你也不想要.问题是,即使您使用的是CMS,也有一些部分需要停止这个世界,这可能会导致您的超时.

更好的解决方案是对应用程序进行内存配置,以便减少垃圾.这将根据尺寸和频率缩短GC时间.如果您可以将GC减少到每天不到一次,则不会再出现此问题.