JVM调优用于少量和长时间的GC运行

时间:2017-06-06 13:43:41

标签: java performance garbage-collection jvm

我的服务器应用程序生成了许多年轻的对象,因此我认为伊甸园和幸存者空间填充得相当快,这导致频繁的GC运行。
我的目标是每天少跑一次,即使他们需要几秒钟。

您如何调整此目标的JVM?
我应该使用哪种GC? (高达G1 )。

可用堆空间大约为4Gb(-Xmx4G)

1 个答案:

答案 0 :(得分:0)

在你的情况下,它会触发频繁的次要gc。您应该使用"-XX:NewRatio=ratio"

NewRatio这将决定老一代和年轻一代之间的比例。

例如-XX:NewRatio = 3意味着老一代与年轻一代之间的比例是1:3,伊甸园和幸存者空间的总和将是堆的四分之一。

此外,您可以使用NewSize和MaxNewSize来微调Eden和Survivor空间,这些参数控制新一代的最小和最大尺寸。

默认情况下,NewRation = 2表示旧一代与年轻一代的比例为1:2。

您可以阅读更多详情here