• Stars
    star
    106
  • Rank 325,871 (Top 7 %)
  • Language
    Go
  • Created almost 3 years ago
  • Updated over 2 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

MIT 6.824: Distributed Systems (Spring 2020)

MIT6.824

MIT 6.824: Distributed Systems (Spring 2020)

  • Lab 1
  • Lab 2
    • Lab 2A
    • Lab 2B
    • Lab 2C
    • Lab 2D
  • Lab 3
    • Lab 3A
    • Lab 3B
  • Lab 4
    • Lab 4A
    • Lab 4B
  • Lab 4 Challenge
    • Challenge 1: Delete & Concurrent
    • Challenge 2: Unaffected & Partial
  • Optimization: LeaseRead with noop
    • Now read-only requests could be served locally since it DOES NOT need to go through Raft layer anymore ( implemented in kvraft and shardctler)

This repo is really a high quality implementation. All tests passed for at lease 1000 times, and Linearizable3B in kvraft passed for 10000 times. I finished two challenges in Lab 4 and a set of extra optimizations which are deemed hard to achieve by many (though a very small modification to test suites has been carried out). The code is well-structured and clean, leads to a well balance between maintainability and abstraction. Plus, I carefully cherry-picked and squashed commits to make them atomic, and only least required alternation is made which follows a clear logic.

I think the optimization (LeaseRead with noop) and several topics in shardkv are worth discussing, I'll write a blog post on this on my personal blog later on.

EDIT 2022/3/16: This blog post has been posted here (in Chinese Simplified).

More Repositories

1

Avalon

🤖 A scalable multi-function group robot for QQ and Discord. 多功能、可扩展的群机器人,支持QQ和Discord。
Kotlin
93
star
2

dont-interface

How many interface{} are there in your project?
Go
17
star
3

sirius

🚧 Type-safe, lightweight JSON validator with Kotlin DSL.
Kotlin
11
star
4

MIT6.S081

MIT 6.S081: Operating System Engineering (Fall 2020) - labs & notes
10
star
5

TelegramWordCloud

Generate word cloud from Telegram chat history.
Python
7
star
6

Telesteller

🚧 High-performance, lightweight, reliable MQTT Broker implemented in Rust.
Rust
7
star
7

althas

A header-only C++ library that provides unit test facilities for Verilator which makes your testing procedure much easier.
C++
6
star
8

ray-eldath.github.io

JavaScript
4
star
9

algorithm

全网最菜算法练习代码仓库QAQ
C++
4
star
10

ComAmA

在线将Markdown文本转换为BBCode
HTML
4
star
11

whatever

Scala, Cats, Kotlin, JMH, x86, MIPS, Modern C++, and more...
Scala
3
star
12

scala-learning

Scala
2
star
13

Avalon-GroupCleaner

基于酷Q的自动QQ群成员清理程序。
Java
2
star
14

portableSEAL

gRPC binding for Microsoft SEAL.
C#
2
star
15

CloudinaryUploader

A tool which can upload any files to Cloudinary.
Java
1
star
16

programming_languages_coursera

Personal code pieces related to course Programming Languages by Dan Grossman on Coursera.
Ruby
1
star
17

.dotfiles

Personal snippets and scripts and configuration.
Vim Script
1
star
18

offgrid

Examplary OVER DESIGN.
Kotlin
1
star
19

countCall

Counts how many times a set of functions is called across your files.
Go
1
star
20

distributed-txn-Ray-Eldath

distributed-txn-Ray-Eldath created by GitHub Classroom
Go
1
star
21

TestDriver

A macro intends to let you build your own unit testing suite.
Rust
1
star
22

astrio

Very naive 5-stage pipelined MIPS CPU and corresponding assembler & disassembler.
C++
1
star