mit 6.824 -- map reduce - (sunznx) 振翅飞翔
26 April 2021

lab1 是一个 map reduce。大名鼎鼎的 map reduce 不过多介绍了。

这个 lab 是我最后一个完成的,在完成 lab2、lab3、lab4 之后,我发现我需要做一些总结和整理,然后我才发现 lab1 还没写。。。

然后花了一个晚上搞定,比起其他几个 lab,这个算是简单很多的。

和其他 lab 一样,先看测试用例

通过测试用例,可以推断程序要实现的功能:
mrcoordinator.go 作为 master,mrworker 作为 worker。worker 不断的向 master 拉取任务,直到任务结束

过程中,要注意的是 worker 可能会挂掉。因此,master 在分发 job 给 worker 的时候,记录一下分发的时间,超过一定时间没收到 worker 的回调,说明 worker 可能挂了,重新将该 job 丢回任务池

test-mr.sh 里面还有一个 wait -n ,这个语法我在 mac 下会报错,我把他改成了

wait
wait
wait
wait