2

我已经建立了一个包含多个订购者的结构网络,并分析了一些关于它如何工作的场景。有两个问题。

  1. 多排序网络的优点之一是避免单点故障。因此,如果一个 orderer 失败,它必须自动将另一个 orderer 带入图片并继续工作。但是在通过cli调用peer chaincode的实际场景中,我们传递orderer的参数和orderer的cafile来进行交易。在这里,我们传递了订购者信息,因此如果我们选择的订购者关闭,则交易将不会完成。我的问题是 - 这不是多订购者网络的目标,那么为什么我们需要传递订购者相关的参数?
  2. 我用 4 个 kafka 代理和 3 个 zookeeper 部署了这个网络。即使在停止所有三个动物园管理员之后,结构网络也会给出正确的响应。zookeeper的意义是什么?
4

1 回答 1

1
  1. 多订购者的目的是消除单点故障并允许订购服务水平扩展。peer CLI 实际上并不打算用于生产应用程序中的调用。通常,将使用诸如 Node 或 Java 之类的 SDK,并且在失败时,将向另一个排序者重试调用。
  2. Kafka 代理使用 Zookeeper 来管理领导者选举,并通常协调 Kafka 集群中的更改。我希望在 Zookeeper 关闭的情况下,最终您会遇到集群问题。网络可以正常运行,直到 kakfa 没有任何问题。但是,当 kafka 出现问题时,Zookeeper 将负责接下来的步骤。
于 2018-09-27T07:53:16.087 回答