Java 垃圾收集器 - CMS 与 G1

问题描述 投票:0回答:1

我有一个关于垃圾收集器的问题。 我已经为我的 Xms 和 Xmx 设置了 24GB,但我面临的问题是我发现从未使用完整的堆大小 - 垃圾收集器似乎在我达到 8GB 堆内存时运行。这是正常的吗?我不应该太在意它,或者我可以通过其他方式让它工作?

在 Hibernate/Spring 中处理 32000 条记录时,我遇到了一些性能问题,将性能从 40 秒提高到 6 秒的方法是将堆大小从...... 512MB 更改为 8GB 或更高,但我仍然想要进一步提高性能。

我看到了一些关于 CMS 与 G1 收集器的文章 - 我应该使用哪一个? 我的应用程序正在运行 Java 8,如果它添加了任何重要信息。

java hibernate garbage-collection heap-memory
1个回答
0
投票

您的应用程序没有使用您分配的所有 24GB 是正常的,不用担心。

垃圾收集器启动的那一刻也是java关心的,你不应该担心它。实际上,您能做的最好的事情就是建议垃圾收集器应该启动,但您不能强制它

如果您想进一步提高性能,请专注于您的代码并尝试找出可以采取哪些措施来提高其效率。

您可以尝试升级到 Hibernate 提供程序的最新版本,甚至尝试使用另一个在您的特定场景中可能表现更好的 JPA 提供程序来更改它。

升级到最新的 java 也有助于提高性能。

© www.soinside.com 2019 - 2024. All rights reserved.