Hyperledger Fabric系统架构
一:名词解释
1.Raft共识机制
(1):共识机制
共识算法可以让机群协同工作,并且可以容忍部分成员主机的故障。而通常主机的故障会分为两种情况:
拜占庭故障: 出现故障后伪造信息恶意响应。
非拜占庭故障: 出现故障但不会伪造信息。
拜占庭将军问题的具体解释: 该问题为一个协议问题。军队的将军们必须全体一致的决定是否攻击某一支敌军。问题是这些将军在地理上是分隔开的,且其中存在叛徒。叛徒可以任意行动以达到以下目标:欺骗某些将军采取进攻行动;促进一个不是所有将军都同意的决定,如当将军们不希望进攻时促进进攻行动;或者迷惑某些将军,使他们无法做出决定。如果叛徒达到了这些目的,则行动必然失败。
结论: 如果需要容忍n个叛国者,则必须保证将军总数大于3n。
(2):Raft共识机制
核心思想:
如果多个数据库的初始状态一致,只要之后进行的操作一致,就能保证之后的数据一致。
节点状态
Raft算法将节点划分为三种状态:
Leader(主导状态):所有对系统的修改都会先进行Leader,每个修改都会写一条日志。
Follower(跟随状态):所有节点都以该状态开始,如果没有收到Leader消息则会变成Candidate状态
Candidate(候选状态):会向其他节点“拉选票”,得到大部分票的则成为Leader。(Leader选举)

共识过程
该共识过程主要分为两个阶段:Leader的选举和在选举出的leader上进行正常操作。
Leader选举:
当follow在选举时间内未收到leader的心跳消息,则转换为candidate状态。
Raft系统中:
1).任何一个服务器都可以成为一个候选者candidate,它会向其他服务器followe发送要求选举自己的请求。
2).其他服务器同意了,发出ok。只要达到大多数票,候选人就可以成为leader。
3).成为领导人之后,可以向选民(follower&

本文详细介绍了Hyperledger Fabric的系统架构,包括Raft共识机制、gRPC和Gossip协议。Raft共识机制保证非拜占庭故障的容错,gRPC提供高性能的RPC服务,Gossip协议用于信息扩散。Fabric的架构由成员服务、区块链服务、智能合约服务和应用编程接口组成,支持多种共识机制,如Raft。同时,文章深入探讨了Fabric的核心组件,如网络中的服务节点、账本、链码等。
最低0.47元/天 解锁文章
1496

被折叠的 条评论
为什么被折叠?



