Caching 超出Neo4j GC开销限制

Caching 超出Neo4j GC开销限制,caching,memory,neo4j,Caching,Memory,Neo4j,我正在运行一个测试,我得到了一个“超出GC开销限制”错误。 我明白这是因为我在缓存中加载了太多的原语。我错了吗 那么,我的问题是,我们如何才能避免这种情况? 例如,我们可以根据原语的数量来评估所需内存的大小吗?有没有什么建议可以让你大致了解一下 我的老板想知道我们可以同时管理多少个原语。 我假设它与JVM设置相关,但无法找到哪些设置 抱歉,如果这是愚蠢的问题,我不习惯JVM设置和性能,我对它的知识非常缺乏。努力并愿意理解 Jimmy。了解Java垃圾收集的细节到目前为止不是一件小事。既然你们的问

我正在运行一个测试,我得到了一个“超出GC开销限制”错误。 我明白这是因为我在缓存中加载了太多的原语。我错了吗

那么,我的问题是,我们如何才能避免这种情况? 例如,我们可以根据原语的数量来评估所需内存的大小吗?有没有什么建议可以让你大致了解一下

我的老板想知道我们可以同时管理多少个原语。 我假设它与JVM设置相关,但无法找到哪些设置

抱歉,如果这是愚蠢的问题,我不习惯JVM设置和性能,我对它的知识非常缺乏。努力并愿意理解


Jimmy。

了解Java垃圾收集的细节到目前为止不是一件小事。既然你们的问题相当不具体,我也可以提供一个相当不具体的答案。Neo4j参考手册中有一节介绍JVM设置


根据图形和堆大小,另一个想法是更改对象缓存的实现类型。有一个
soft
(社区版中的默认值)、
weak
strong
缓存实现。此外,enterprise edition还提供了
hpc
(高性能缓存)实现,它通过动态调整缓存大小显著减少了完全垃圾收集的数量。更多阅读

对我来说,在neo4j wrapper.conf中添加/取消注释以下行是有帮助的:

wrapper.java.initmemory=4096
wrapper.java.maxmemory=4096
问题在于RAM的大小

您可以在Windows系统上的“C:\Program Files\Neo4j Community\Neo4j-Community-2.1.3\conf”中找到此文件,例如


PS:另一篇关于还有什么可以帮助您()的好文章。

您是否尝试过使用更多内存运行java进程?你的机器有多少内存?您可能希望尝试添加“-Xms1g”作为VM参数,或者分配更多内存。