awesome-distributed-systems
A (hopefully) curated list on awesome material on distributed systems, inspired by
other awesome frameworks like awesome-python.
Most links will tend to be readings on architecture itself rather than code itself.
Bootcamp
Read things here before you start.
Books
Papers
Must read papers on distributed systems. While nearly all of Lamport's work should feature here, just adding a few that must be read.
Storage & Databases
Messaging systems
Distributed Consensus and Fault-Tolerance
Testing, monitoring and tracing
While designing distributed systems are hard enough, testing them is even harder.
Programming Models
Verification of Distributed Systems
- Curated list of resources on testing distributed systems includes links to materials on testing by various companies (Google, Amazon, Netflix, Microsoft, Dropbox, etc) and research papers.
- Jepsen A framework for distributed systems verification, with fault injection
@aphyr has featured enough times in this list already, but Jepsen and the blog posts that go with are a quintessntial addition to any distributed systems reading list.
- Verdi A Framework for Implementing and Formally Verifying Distributed Systems Paper
Videos
Courses
- Reliable Distributed Algorithms, Part 1, KTH Sweden
- Reliable Distributed Algorithms, Part 2, KTH Sweden
- Cloud Computing Concepts, University of Illinois
- CMU: Distributed Systems in Go Programming Language
- Software Defined Networking , Georgia Tech.
- ETH Zurich: Distributed Systems
- ETH Zurich: Distributed Systems Part 2, covers Distributed control algorithms, communication models, fault-tolerance among other things. In particular fault tolerance issues (models, consensus, agreement) and replication issues (2PC,3PC, Paxos), which are critical in understanding distributed systems are explained in great detail.
- Distributed Systems Course, A beginner course on distributed system by Chris Colohan, A google employee who contributed to SUIF, MapReduce, TCMalloc, Percolator, Caffeine, Borg, Omega, and Piper.
- MIT 6.824, Youtube-playlist MIT distributed system lectures, in each video they discuss papers like GFS, Zookeeper, RAFT, Spanner...
- [Distributed