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。
- Author:newrain-zh
- URL:https://alex.sh.cn/article/MIT6.824
- Copyright:All articles in this blog, except for special statements, adopt BY-NC-SA agreement. Please indicate the source!