HLF v1.0 node.js fabric-client 和 orderers 可用性
HLF v1.0 node.js fabric-client and orderers availability
我有以下结构网络拓扑:两个组织,每个组织有两个对等点和两个订购者(以及所需的 kafka/zookeepers)。
问:如何设置节点 fabric-client 以保护我的应用程序免受单个订购者故障的影响?
文档说我可以使用 channel.addOrderer(orderer) 将多个订购者添加到列表中,但它也说
"SDK uses only first orderer from the list"
因此,我的理解是列表中第一个订购者的失败将阻止后续交易的处理 - 我是对的吗?
你是对的,虽然你可以很容易地纠正这种情况。如果你从 sendTransaction 中得到一个失败,这与那个排序节点被关闭有关(例如 SERVICE_UNAVAILABLE),你可以使用 removeOrderer 方法删除排序节点,然后再次调用 sendTransaction(因为它现在将使用任何下一个排序节点)清单是)。您也可以使用 addOrderer 将您删除的订购者添加回列表的末尾。
版本v1.2.0 of Node SDK, already includes this feature通道可能有多个排序节点,sendTransaction
API应该尝试第一个,然后再尝试下一个,依此类推,直到成功发送交易。
我有以下结构网络拓扑:两个组织,每个组织有两个对等点和两个订购者(以及所需的 kafka/zookeepers)。
问:如何设置节点 fabric-client 以保护我的应用程序免受单个订购者故障的影响?
文档说我可以使用 channel.addOrderer(orderer) 将多个订购者添加到列表中,但它也说
"SDK uses only first orderer from the list"
因此,我的理解是列表中第一个订购者的失败将阻止后续交易的处理 - 我是对的吗?
你是对的,虽然你可以很容易地纠正这种情况。如果你从 sendTransaction 中得到一个失败,这与那个排序节点被关闭有关(例如 SERVICE_UNAVAILABLE),你可以使用 removeOrderer 方法删除排序节点,然后再次调用 sendTransaction(因为它现在将使用任何下一个排序节点)清单是)。您也可以使用 addOrderer 将您删除的订购者添加回列表的末尾。
版本v1.2.0 of Node SDK, already includes this feature通道可能有多个排序节点,sendTransaction
API应该尝试第一个,然后再尝试下一个,依此类推,直到成功发送交易。