我希望尽可能在单个VM上运行尽可能多的Neo4J实例(使用企业版)。启动实例的最低RAM要求是什么?
现在,TaskManager告诉我Java.exe大约需要70,000K(70兆)。听起来不错吗?
我并不担心性能,我只想在一个盒子上填充尽可能多的实例,这样人们就可以对它们的图形进行低需求搜索。
答案 0 :(得分:3)
有一件事是推荐的,第二件是"它取决于"。
Neo4j能够在Raspberry Pi上运行。但是你不应该期待很好的表现。我也使用AWS t2.micro
进行测试,这已经足够了。
答案 1 :(得分:2)
当图形被加载到内存中以执行遍历时以及当它被分页回到磁盘时(当内存用完时),大小必然会波动。
如果我可以提供建议,您只能运行一个数据库实例,并为每个用户提供未连接的图表。就服务器资源而言,这很可能会更有效率。
例如,如果你说(:Item)节点构成了每个用户的图形, 您可以将它们标记为(:Item-User1),并为每个用户添加唯一的前缀或后缀。
因此,当您想要更改为每个用户运行的查询时,您只需添加该唯一元素并搜索图表。
想法是为每个用户创建一个单独的子图,该子图与其他用户的子图不相关。而不是为每个Individual用户提供单独的数据库实例。只要每个用户的子图与其他用户的子图不相连,就不会有用户被授予访问其他用户数据的安全漏洞。
通过这种方式,您可能拥有无限数量的用户(在合理范围内。很可能在数百万用户中),每个用户都有自己的子图,可能没有性能损失,而不是少数几个可以启动的数据库实例在单个虚拟机上,可能会竞争资源并扼杀。
答案 2 :(得分:0)
对于neo4j 3.x,documented最小内存要求为2GB。