前言
我计划写raft的一系列文章,包含从理论到代码实践,此文章依托于MIT的研究生课程。
背景
raft 是一种分布式的共识算法,其目的是要实现多个节点集群的容错性,一致性从而能够构建大规模的软件系统。
在raft之前,比较有名的是Paxos。但是paxos难于理解。
raft的诞生是为了让共识算法更容易理解,在工程上更容易实现。
和其他的共识算法不同的是,raft具有下面的特点:
1、leader:raft中会有一个领导者具有超级权限,可以把自己的log 复制到其他节点中。
2、leader