Raft实现报告(六)

本文涉及的产品
日志服务 SLS,月写入数据量 50GB 1个月
简介: Raft实现报告(六)

Raft实现报告(六)

上文提到了,raft的AppendEntiresRPC会带有一致性检查机制,这种机制可以让leader强制follower与自己保持一致。(论文读到这里我其实又个问题,就是这些错误的日志条目一定是错误的吗?如果term较为老的节点成为了leader,那么不会导致操作回滚吗,如果强制覆盖了follower的log)

一致性检查机制的总结

通过这种机制,leader就无需再通过额外的手段去存储一致性log当他启动的时候。leader只需要开始正常操作,当AppendEntries一致性检查失败的时候logs就会自动收敛。一个leader从来不回重写,或者删除自己的日志条目(Leader有Append-Only属性)

log replication mechanism

他们设计的这种日志复制机制,就展现了之前共识特性的理想情况,只要大多数服务器处于运行状态,Raft就可以接受,复制,和申请新的日志条目,在正常情况下,可以通过单轮的RPC将leader的条目复制到大多数及群众,并切单个的慢速follower不会对性能造成影响。

补充

日志复制机制时MIT的学生,他们像更好理解Raft算法实现,设计出来的raft一致性验证的一种机制,因为可以更好的直观的感受raft保持强一致性的状态。


相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
相关文章
|
存储 索引
Raft实现报告(16)
Raft实现报告(16)
|
开发工具 git
Raft实现报告(四)
Raft实现报告(四)
|
安全
Raft实现报告(11)
Raft实现报告(11)
|
存储 安全
Raft实现报告(14)
Raft实现报告(14)
|
算法 安全
Raft实现报告(13)
Raft实现报告(13)
|
存储 算法 安全
Raft实现报告(九)
Raft实现报告(九)
|
存储 算法
Raft实现报告(12)
Raft实现报告(12)
|
存储 安全 算法
Raft实现报告(一)
Raft实现报告(一)
102 0