根据体系结构解释(http://hyperledger-fabric.readthedocs.io/en/latest/arch-deep-dive.html),订购服务将事务(RWSets)收集到块中以便分发给提交的对等体。然后,提交对等方验证认可策略和RWsets,然后将该事务应用于分类帐。
要验证事务是否成功,客户端应用程序是否应该等到所有提交的对等体都返回"成功"事件?或者只需要验证一个"成功"事件?
答案 0 :(得分:1)
田中,这是一个非常好的问题! 简短的回答是否。要验证事务是否成功,应该是客户端应用程序 等到所有提交的同伴都回来了#34;成功"事件?要不就 需要只验证一个"成功"事件?
原因是,与现有的流行区块链相比,HLF具有独特的交易生命周期,其中包括:
因此,如果在某个对等体上验证了某个事务 - 当其他对等体将收到该事务所在的块时 - 它们也会将其视为有效。
然而 - 您应该考虑的一个非常重要的方面是数据可用性和同步。 例如,如果您有一个使用10个对等体的应用程序,并且只有1个对等体获得了该事件而其余的没有,并且您在其他对等体上调用另一个事务,则可能是其他对等体将计算的认可将被转换为无效的交易,因为他们将模拟旧数据(事实上他们没有得到事件但证明他们没有处理该交易的块),所以你需要记住这一点