集群中带有静态变量的 Neo4j 过程

Neo4j Procedure with static variables in a cluster

假设我有一个带有自定义过程的 Neo4j 数据库,我已经编写了。 该过程使用静态变量作为某种短期记忆,例如 apoc.search 过程。 我现在想集群我的 Neo4j,这意味着我在不同的 VM 上有多个实例 运行。 我现在遇到问题,集群实例不能共享静态变量的内容,对吗? 有什么方法可以分享吗?

为了更好地理解,假设我通过创建一个节点并将其保存在 public static Node node; 中而不是数据库中来重新实现 apoc.create.vNode 过程。我已将该插件部署到集群的每个实例中。当我现在像这样保存一个节点时,它只会被一个 Neo4j 实例知道,对吧? 当我的实例死亡时,节点被遗忘。

这是正确的吗?

是的。过程中保存的状态,即使是静态状态,也不会跨集群共享。

我认为分享它的唯一方法是将其保存到图表中。