lab3 在 lab2 的基础上实现一个上层的kv 存储服务,有 client 和 server 两个新角色。client 有 get 和 putappend 两种操作,当 client 首先向随机的一个 server 发起请求,如果这个 server 不是 raft 中的 leader 则返回失败,client 再向另一个 server 发起请求,直到请求到达 leader。server 接收到请求后,会...
lab4A 实现的是左半边的内容,处理 client 和shardCtrler之间的通信,包括 Query、Join、Leave、Move 这 4 个RPC。shardCtrler 管理着数据分片的一些信息,比如某个 shard 具体保存在哪个 group 上,client 知道这个信息后就可以直接向对应的 group 索要数据 lab4A lab4A 整体实现与 lab3 基本相同,但是不用考虑 snap...