已停用:将垃圾回收方法更改为 G1
| 这已经是 Neo4j 2.3+ 的默认垃圾收集器。本指南仅针对早期版本。 |
何时使用 G1
默认情况下,Neo4j 2.2 及更早版本使用并发标记清除(CMS)进行垃圾收集。堆较大或在默认方法下出现不可接受的垃圾收集暂停的用户应尝试 G1(Garbage First)。
G1 在应用程序的吞吐量上做出一点让步,以确保 Full GC 暂停可预测且短暂。它在运行时对堆中的对象进行压缩,以避免与 CMS 相关的长时间 Full GC。
设置 G1 时,需要考虑目标 GC 暂停时长。我们建议初始保持默认值(200ms),但如果观察到大量 GC 超过一到两秒,可以适当调高。例如,可以先尝试 400ms,然后是 600ms,直至找到合适的平衡。目标暂停的设置是
wrapper.java.additional=-XX:MaxGCPauseMillis=200
如果想更改默认设置,请在 conf/neo4j-wrapper.conf 中添加此行。
切换到 G1
编辑 conf/neo4j-wrapper.conf 并进行修改
#********************************************************************
# JVM Parameters
#********************************************************************
#wrapper.java.additional=-XX:+UseConcMarkSweepGC
wrapper.java.additional=-XX:+UseG1GC
| G1 只能与最新的 Java 7 或 Java 8 版本一起使用。 |
此页面有帮助吗?