Raft算法的原理与实现

本文深入浅出地讲解了Raft一致性算法,对比Paxos的复杂性,Raft通过简化设计实现分布式系统的Leader选举、日志复制及安全性。文章详细介绍了Raft的基本概念、工作流程,包括状态转换、RPC调用等关键机制。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Raft###简单介绍 分布式一致性算法, 由于Paxos难于理解,和落地,Raft被设计出来的目的就是尽可能的简单 Raft把问题拆分成Leader election, log replication, Safety.###基础* Raft集群一般有5个节点,允许2个失败。* 每个node有3个状态,follower,candidate,leader。* Followers不会主动的请求其他节点,只答复candidate,leader的请求。* leader处理所有客户端请求,follower可以转发来自客户端的请求。* 状态流转图* Term: 版本控制的机制,当逻辑锁来使用,判断leader是否有效* Raft内部有3种RPC 1. RequestVote 2. Append-Entrie 3. transferring snapshots###Leader election###Log ReplicationRaft维护高度的日志同步,不仅因为简单,而且还安全>Leader Append-Only: a leader never overwrites or deletes>entries in its log; it only appends new entries. §5.3>Log Matching: if two logs contain an entry with the same>index and term, then the logs are identical in all entries>up through the given index. §5.3简单的一致性检查:AppendEntries包含prevLogIndex(上一次的处理的log entry index), 如果follower找不到,返回false

转载于:https://my.oschina.net/u/3429856/blog/3024232

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值