6.824
文章平均质量分 94
arccosY
www.github.com/arcsinY
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
MIT6.824 Lab3实现与踩坑
Lab3要在Lab2的Raft层之上实现一个key-value存储系统,实现数据的多副本存储,要求满足线性一致性。理论上来说,Raft只能保证共识,即保证各个节点的log是相同的,这与系统的一致性无关。系统是否满足线性一致性取决于上层应用的实现方式。对于本实验来说,要想满足线性一致性,就要求无论是读请求还是写请求,都需要在Raft层提交之后才在KVServer上执行。Lab3并不像Lab2一样按照一篇论文来实现,需要自己设计。但其实这个系统的实现思路基本就一种,没有太多自己发挥的空间。我看了网上的其它博客原创 2022-01-20 18:31:25 · 4842 阅读 · 0 评论 -
MIT6.824 Lab2实现与踩坑
Lab2要求实现Raft协议,最主要的就是实现两个RPC方法——RequestVote和AppendEntries,每个RPC方法的参数、返回值和处理流程要完全按照论文来实现,同时要参考课程给出的Raft Structure Advice和Student Guide。下面对论文中的一些细节和go语言的实现细节做一些记录一、Lab2ALab2A只需要实现leader election这一个功能,测试也只有两个,但也是整个Lab2,3,4的开始,所以并不简单currentTerm和votedFor的改变:原创 2022-01-19 00:21:54 · 2811 阅读 · 1 评论
分享