Lazy loaded image
MIT6.824
🏫MIT6.824: Distributed System
Words 746Read Time 2 min
2025-7-2
2025-9-12
type
status
date
slug
summary
tags
category
icon
password
原文

课程介绍

这门课和 MIT 6.S081 一样,出品自 MIT 大名鼎鼎的 PDOS 实验室,授课老师 Robert Morris 教授曾是一位顶尖黑客,世界上第一个蠕虫病毒 Morris 病毒就是出自他之手。
这门课每节课都会精读一篇分布式系统领域的经典论文,并由此传授分布式系统设计与实现的重要原则和关键技术。同时其课程 Project 也是以其难度之大而闻名遐迩,4 个编程作业循序渐进带你实现一个基于 Raft 共识算法的 KV-store 框架,让你在痛苦的 debug 中体会并行与分布式带来的随机性和复杂性。

课程资源

  • 课程视频:参见课程网站链接
  • 课程教材:无,以阅读论文为主
  • 课程作业:4 个非常虐的 Project,具体要求参见课程网站

HINTS

课程部分

课程分为 20 个单元(Spring 2020),讲述的都是分布式领域的经典论文,包括但不限于分布式事务,共识算法,复制,缓存一致性等。该课程难度很高,阅读量超大,需要阅读 GFS、VM-FT、RAFT、Spanner等论文。如果以文字来计算阅读量保守估计百万字,每节课约 1 个多个小时,总共约 25 个小时。虽然看起来时长不多,但是要理解系统的运作还是需费很多的时间与精力,课程+论文+实验保守估计 200 小时。这是某平台给出的预估时间,按照个人经验可能远远不止。

论文部分

由于大部分的论文都是经典论文,很多论文本身都有中文版本也有很多中文资料,通过搜索引擎都可以搜索到,所以对于有兴趣阅读的人门槛不是特别高,其复杂度来自于对论文中描述的系统运作的理解。

实验部分

实验都是以 golang 为来实现一个分布式系统,所有的实验都非常具有挑战性。这里有几点个人心得。
  • 虽然搜索引擎能搜到部分实验部分的实验,建议你不要直接复制粘贴,只参考思路,不参考代码,否则你可能无法明白整个系统是如何运作的以及错过关键 BUG,导致你缺少了对整个流程所有细节的掌握。
  • 合理的构建一个链路追踪日志,否则BUG 你将无从下手。
  • 要小心锁的粗粒度。
另外建议实验部分的代码,不要以上传到 github。
上一篇
Kafka 五、消费者
下一篇
Lecture 1: Introduction

Comments
Loading...