Free module
Distributed systems
Learn distributed systems hands on: replication, consistency, partitioning, quorums and safe retries, with a real store and a log.
The lessons
Each lesson is free to read in full. Create a free account to run its commands in a live lab and to sit its quizzes and tasks.
1 · Container lab
Why systems run on many machines
I can say why systems run on many machines and what goes wrong.
Read the lesson2 · Container lab
How data replication works
I can explain how copies of data are kept and what a failure does.
Read the lesson3 · Container lab
Strong and eventual consistency
I can say what a reader sees after a write, and the trade-off.
Read the lesson4 · Container lab
Sharding and partitioning data
I can split data across machines by key.
Read the lesson5 · Container lab
Quorum and leader election
I can explain how machines agree on a leader or a value.
Read the lesson6 · Container lab
Retries and idempotent consumers
I can design a consumer that survives retries.
Read the lesson
Worked in a real lab
Every lesson of this module is worked in a lab started for you alone. The labs it uses:
Teaching a class? Set this module for your students with a teacher guide, marked assignments and a lab for every student.