每日一博 | 深入剖析共识性算法 Raft
一、 Raft简介 1.1 Raft简介 Raft是一种为了管理日志复制的分布式一致性算法。Raft出现之前,Paxos 一直是分布式一致性算法的标准。Paxos 难以理解,更难以实现。Raft 的设计目标是简化 Paxos,使得算法既容易理解,也容易实现。 Paxos 和 Raft 都是分布式一致性算法,这个过程如同投票选举领袖(Leader),参选者(Candidate)需要说服大多数投票者(Follower)投票给他,一旦选举出领袖,就由领袖发号施令。Paxos 和 Raft 的区别在于选举的具体过程不同。 Raft 可以解决分布式 CAP 理论中的 CP,即一致性(C:Consistency)和分区容忍性(P:Partition Tolerance),并不能解决可用性(A:Availability)的问题。 1.2分布一致性 分布式一致性 (distributed consensus) 是分布式系统中最基本的问题,用来保证一个分布式系统的可靠性以及容错能力。简单来说,分布式一致性是指多个服务器的保持状态一致。 在分布式系统中,可能出现各种意外(断电、网络拥塞、CPU/内存耗尽等...