因果集群友好的实施

Causal-cluster-friendly implementation

我正在构建一个使用本机 neo4j JavaScript 驱动程序的应用程序。如果我们迁移到因果集群,我想确保我的代码能够正常工作。

在线文档似乎并不清楚如何执行此操作:我注意到对 "bookmarks" 和 "reading what you have written" 等内容的稀疏引用。但它们如何组合在一起尚不清楚.

有人可以提供概要吗?

要使用因果集群,您需要更改:

1) url 连接:将 bolt://localhost:7687 替换为 bolt+routing://localhost:7687

这将允许您的应用程序对集群进行一些 LB 查询,并且在不执行任何其他操作的情况下实现容错

2) 当你打开一个新会话时,你应该指定你将在这个会话中做什么,即。读或写。 这将帮助驱动程序选择好的服务器(即核心服务器或副本服务器)。否则它假定您将执行一些 WRITE 操作,并且驱动程序将始终选择一个核心服务器 ...

3) 因为您将在集群环境中,所以在集群内部传播更新会有一些滞后(一些秒)。 或者有时,您需要在两个会话中 read your own writes。这是您需要书签功能的地方。

文档在这里:https://neo4j.com/docs/developer-manual/current/drivers/

干杯。