Distributed Systems
A 19-module path through distributed systems, in study order from foundations to the frontier.
Modules
- Distributed System Models and Goals
- Challenges of Distributed Systems: Partial Failure and Concurrency
- Remote Procedure Calls
- Clocks and Time in Distributed Systems
- Logical Clocks and Lamport Timestamps
- Vector Clocks
- Global State and Distributed Snapshots
- Mutual Exclusion in Distributed Systems
- Leader Election
- Fault Tolerance and Failure Models
- The Consensus Problem
- FLP Impossibility Result
- Paxos Consensus Protocol
- Raft Consensus Algorithm
- Replication and Consistency Models
- Linearizability
- CAP Theorem
- Eventual Consistency
- Distributed Transactions and Two-Phase Commit