如何进行基于Neo4j缓存的分片?

如何进行基于Neo4j缓存的分片?,neo4j,haproxy,Neo4j,Haproxy,我一直在阅读Neo4j的文章和网络上的帖子,但是我几乎找不到任何关于如何在现实世界的图形(可能包含多个节点标签)上为缓存切分配置HAProxy的详细示例(是的,操作手册上的一个非常简短) 以前有人这样做过吗?如果你能分享你的经验,那就太好了 此外,我对使用HAProxy分割图形的机制有点困惑。仅仅通过在HAProxy中提供规则,子图如何缓存在某些从属对象上?当我得知缓存分片不由Neo4j处理时,我感到很惊讶。目标是将始终命中图形相同区域的查询发送到相同的实例。这当然意味着请求数据指示区域。使用

我一直在阅读Neo4j的文章和网络上的帖子,但是我几乎找不到任何关于如何在现实世界的图形(可能包含多个节点标签)上为缓存切分配置HAProxy的详细示例(是的,操作手册上的一个非常简短)

以前有人这样做过吗?如果你能分享你的经验,那就太好了



此外,我对使用HAProxy分割图形的机制有点困惑。仅仅通过在HAProxy中提供规则,子图如何缓存在某些从属对象上?当我得知缓存分片不由Neo4j处理时,我感到很惊讶。

目标是将始终命中图形相同区域的查询发送到相同的实例。这当然意味着请求数据指示区域。使用什么作为“区域指示器”在很大程度上取决于图形的结构和形状


在许多面向客户的应用程序中,人们成功地使用了当前用户id,并将其设置为附加http头,然后由haproxy进行评估。

目标是始终将命中图形相同区域的查询发送到同一实例。这当然意味着请求数据指示区域。使用什么作为“区域指示器”在很大程度上取决于图形的结构和形状


在许多面向客户的应用程序中,人们成功地使用了当前用户id并将其设置为附加http头,然后由haproxy进行评估。

也就是说,在haproxy正确配置的情况下,重新启动Neo4j后,缓存分片会自动完成?@cubbleo与其说是缓存分片,不如说是缓存关联:通过使用指示器,可以增加命中热缓存的概率;由于减少了读取数据的子集(但这取决于每个查询所接触的数据量),因此速度更快并减少了缓存搅动。@FrankPavageau如何提前加载热缓存?指示器只决定查询到哪个节点,不是吗?@如果缓存没有提前加载,第一个命中特定页面的查询将加载缓存。但是一旦你到达了那里,缓存状态就更稳定了。@FrankPavageau这是否意味着,在所有节点都被遍历之后,缓存就被完全加载了?也就是说,在HAProxy正确配置的情况下,在重新启动Neo4j之后,缓存分片会自动完成?@Cubbleo与其说是缓存分片,不如说是缓存关联:通过使用一个指示符,您增加了命中热缓存的概率;由于减少了读取数据的子集(但这取决于每个查询所接触的数据量),因此速度更快并减少了缓存搅动。@FrankPavageau如何提前加载热缓存?指示器只决定查询到哪个节点,不是吗?@如果缓存没有提前加载,第一个命中特定页面的查询将加载缓存。但是一旦你到达了那里,缓存状态就更稳定了。@FrankPavageau这是否意味着,在遍历所有节点之后,缓存已完全加载?