6.824(2020年) Lab1 MapReduce
2018年只要写worker的doMap,doReduce以及master分配任务的schedule,共3个函数。2020年和2018年的相比,难度增加了一点。2020年的Lab1需要我们自己定义RPC。
RPC
Go语言的RPC都是2个参数,Args是客户端所发请求的参数,Reply是服务器执行完rpc的回复。
这个Lab只要一个RPC call就够了,worker向master发送GetTask()
请求分配一个任务。
// Args用来告知master任务完成了
type GetTaskArgs struct {
Phase jobPhase
TaskNumber int
}
// Reply是master分配任务给worker
type GetTaskReply struct {
InFile