raft算法理解

https://cloud.tencent.com/developer/article/1696191

raft算法里的选举能够成功的原因在于时间差——即第一个发现leader心跳检测失败的follower会进行投票选举,并在一般情况下快速获取拿到多数同一并成为新leader。同时通过随机时间差避免无止尽的选举进行下去。

这种算法有点类似于新岛屿的发现:地图上有很多岛屿(term),a第一个发现已有岛屿的所有者(leader)不在了,就会去开拓新岛屿(term),并向其他人广播自己发现了新岛屿。如果在其他人的记录里,该岛屿(term)不属于任何人,则会默认认同a作为新岛屿的所有者(leader),其它人也会迁移到新岛屿并作为居住者(follower)。当前一个岛屿的所有者回归,同其他人沟通后发现自己的岛屿(term)已被抛弃,那么会自动跟随到最新的岛屿(term)并成为追随者(follower)

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容