kafka和raft共识机制

id:BSN_2021

公众号:BSN研习社

两者是不同的。

在kafka共识模式中,orderer与orderer之间不会互相直接建立连接,而是与kafka连接。这种共识模式中,依赖于外部的kafka集群系统和zookeeper集群系统。

每个orderer会把自己的交易发送给kafka集群,交易在kafka对应的topic中排序后,kafka把排序后的交易推送给orderer节点。Orderer节点收到交易后对交易打包,然后发给peer.

在raft共识模式中,orderer与orderer之间直接建立连接,不依赖外部系统。在orderer节点中,会创建raft的协程来处理与其他orderer的通信。

一个raft集群由主节点和若干个跟随节点组成,主节点收到消息后复制给其他(跟随)节点,其他(跟随)节点收到消息后把交易写到日志里,把结果反馈给主节点,主节点收到足够多的反馈时,就认为这是有效的交易,否则为无效交易。主节点的产生是各个节点通过投票产生的,如果有一个跟随节点断开,就会重新再选举。

当前BSN的fabric框架使用的是kafka共识,在同一个区块链网络(Fabric网络)中共识只能是一种。

你可能感兴趣的:(区块链)