Raft实现报告(10)

简介: Raft实现报告(10)

Raft实现报告(10)

最近疫情,已经在家一周了,论文都读不下去了,今天折磨了一天,继续读吧,早点弄完。

followr和candidate的宕机

知道目前为止,以前文章中所有提到的情况都一直专注于leader出现了异常,以及宕机之后如何处理。因为follower和candidate宕机的话更加容易处理。如果follower宕机了,那么发给他的RequestVote和AppendEntriesRPC就会失败。Raft会通过无限期的重试来处理这些失败。如果宕机的服务器重新启动了,那么RPC就会成功响应,如果服务器在处理RPC请求之后,但在响应之前宕机,那么他会再重新启动后再次收到相同的RPC,Raft的RPC必须时幂等的,所以出现的情况对系统不会造成任何的影响。例如,如果一个follower收到了一个AppendEntries请求,传来的条目在在即的log里已经有了,他会忽略请求中的这些条目。


相关文章
|
安全
Raft实现报告(11)
Raft实现报告(11)
|
存储 算法
Raft实现报告(12)
Raft实现报告(12)
|
安全 C++
Raft实现报告(20)
Raft实现报告(20)
|
存储 索引
Raft实现报告(15)
Raft实现报告(15)
|
存储 索引
Raft实现报告(五)
Raft实现报告(五)
|
Linux
Raft实现报告(18)
Raft实现报告(18)
|
存储 算法
Raft实现报告(七)
Raft实现报告(七)
|
安全 开发工具 git
Raft实现报告(二)
Raft实现报告(二)
100 0