-
Notifications
You must be signed in to change notification settings - Fork 624
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Lec 6:Raft实现 #10
Comments
etcd中的实现(InfluxDB也在使用): 这个库实现了raft协议核心的内容,比如append log的逻辑,选主逻辑,snapshot,成员变更等逻辑。没有实现消息的网络传输和接收,库只会把一些待发送的消息保存在内存中。 Raft的Go实现(没有再维护了): 另一个Go实现(BoltDB使用): |
涉及Raft日志(Lab2B)与持久化(Lab2C)的实现细节 Raft日志(Lab2B)提交流程:client RPC -> Start() -> 多数提交协议 -> applyCh(所有节点成功提交后都要发送?) leader发送的AppendEntities请求中包含prevLogIndex和prevLogTerm信息,用于帮助follower判断能否采用,如果从follower返回false则leader回退nextIndex[follower]信息,保证下次发送可以接受 上节课的问题答案: 上述的每次回退一个要求发起一次rpc,非常慢! 持久化(Lab2C)Log压缩及快照(Lab3B)节点变更(未包含在Lab内)性能 |
请问
的英文讲义原文是在哪里呢?我在做这个优化,想参考一下,thx |
|
在解决图8的问题是,论文中提到了这么一个解决方案:
我想问下,关于“发送一个空操作的Log”的问题。 |
@M1178475702 可以仅在 kvServer.Get 的时候做, 而不是在选举成为 leader 的时候做.
|
课前阅读论文:Raft Extended(2014)第六节到后面
讲义:英文
FAQ:英文
本期问题(请大家在本issue中直接回答):Figure13中第8步能否导致状态机重置,即接收InstallSnapshot RPC消息能否导致状态回退
The text was updated successfully, but these errors were encountered: