Corda 4.0-群集中的公证人以实现高可用性

时间:2019-05-20 15:18:35

标签: cluster-computing rpc corda

我正在尝试在Corda V4.0中开发一个应用程序,并且我们正在使用客户端RPC API进行测试(使用DriverDSL)。

我的解决方案有一个带有2个公证人的Raft集群来测试HA。我还与观察员(在公证节点中)实施了一个解决方案,以便公证员将所有交易记录在其保管库中。

当我发送了几笔交易时,其行为与预期的不一样:有些交易记录在公证群集1中,而另一笔交易记录在公证群集2中。

可以吗?我希望所有交易都保存在两个公证群集中,否则Corda如何解决HA?

谢谢

1 个答案:

答案 0 :(得分:1)

我们已经在Corda在线支持[1]上问了这个问题,我们得到了答案:

行为是Corda所期望的。公证需要复制在公证群集中的唯一数据。此内置群集支持不适用于高可用性。 为了实施HA,他们建议我们使用负载平衡器,并且我们有两个或多个节点发布负载平衡器的IP作为公共IP。两个节点应该使用相同的数据库(也许使用Postgres)。

总而言之,应该在Corda之外解决HA。 他们还建议我们看一下Corda Enteprise [2]中“冷热高可用性部署”的文档,特别是负载均衡器的配置部分。

  1. https://www.corda.net/participate/community.html
  2. https://docs.corda.r3.com/hot-cold-deployment.html#configuring-the-load-balancer