在Fabric中,有以下3中典型共识机制。
Solo共识
solo共识机制只能用于单节点模式,即只能有一个Orderer节点,因此,其共识过程很简单,每接收到一个交易信息,就在共识模块的控制下产生区块并广播给节点存储到账本中。
Solo 模式下的共识只适用于一个Orderer节点,所以可以在实验、或者测试环境中使用。不建议用于生产环境。
Kafka共识
在Kafka共识模式中,Orderer与Orderer之间不会互相直接建立连接,而是与Kafka连接。
这种共识模式中,依赖于外部的Kafka集群系统和zookeeper集群系统。每个Orderer会把自己的交易发送给Kafka集群,交易在Kafka对应的topic中排序后, Kafka把排序后的交易推送给Orderer节点。Orderer节点收到交易后对交易打包,然后发给peer。