Hyperledger 网络中的不相交通道

Disjoint channels in a Hyperledger network

Channel是参与者确保交易隐私和机密的机制。如果通道是以这样一种方式创建的,即没有参与者是多个通道的成员,那么 'fabric'(或世界)状态的含义是什么?能有这样的场景吗?

这样的场景一直存在。主要是开发,尽管存在不可变性和出处是主要要求和共识的用例。您仍然可以在一个组织(参与者)中拥有多个同行,这可以提供某种程度的共识等。但是大多数用例将有 2 个或更多组织。

为了说明一点,就在昨天,为了好玩,我只重启了订购者。 (做开发所以单一对等,单一订购者,单一 ca 服务器)。我的网络应用程序似乎正在创建新记录,我可以在对等链代码日志中看到它们是成功的,并且排序者显示已创建块。但是他们不会 return 检索并且我没有收到交易的最终成功消息。

原因是 peer 失去了与 orderer 的入站通信,因此没有收到新的块返回到世界状态。我重新启动了对等节点,它重新连接到排序节点并开始接收世界状态块,然后 webapp 可以正常检索这些块。 (就好像节点离线而其他节点正在更新世界状态一样。重新加入排序节点后,它会立即获得所有世界状态块,因为它处于离线状态)