MIT的6.824课程为分布式系统,共有四个lab,目前只做了三个。语言为golang。此博客记录实验笔记。根据课程要求,不会放出源代码。

实验包括:
Lab 1 MapReduce
Lab 2 Raft

性能performance的需求产生:
scable可扩展性

容错fault tolerance的需求产生:
availability可用性,即部分failure整体仍然能工作
recoverability
可永久性存储
replication

交叉?需求产生:
consistency。由于有上两个需求,所以会有多个副本,所以产生了这个需求

为什么用go:

  • 线程安全
  • 垃圾回收类型语言,不用担心回收