知识库

调整 GC 算法

简介

Java 中提供了多种垃圾回收算法。您可以在我们的产品需求部分找到受支持的 JDK。

我们将回顾一些可用的 GC 及其主要功能。

G1

自 Java 9 以来,这是默认的 GC 算法。这是用于内部测试和 Neo4j 默认使用的算法。它在每个实现中都可用。

Shenandoah

它自 Java 8 以来在某些 OpenJDK 版本中正式可用。

它目前在 Oracle JDK 中不可用。

它允许您拥有无暂停的 GC(<10 毫秒),但以更高的 CPU 使用率为代价(运行时 CPU 使用率增加 20%)。

请注意,我们**不**测试这些算法,因此我们**无法**发出建议。客户可以自由地在较低的环境中进行测试,并选择最适合他们的算法。

您可以通过注释默认的 dbms.jvm.additional=-XX:+UseG1GC 并添加 dbms.jvm.additional=-XX:+UseShenandoahGC 到 neo4j.conf 中来启用它。

#dbms.jvm.additional=-XX:+UseG1GC
dbms.jvm.additional=-XX:+UseShenandoahGC

您可以在此处找到更多信息。

C4 Azul

此版本有其自己的专有无暂停算法,该算法受支持。这是一种**付费**算法,因此您可能需要先获取许可证。

您可以在此处找到更多信息。

请注意,我们**不**测试这些算法,因此我们**无法**发出建议。客户可以自由地在较低的环境中进行测试,并选择最适合他们的算法。