Down or Just Slow? | System Design Music Video (Distributed Systems)
James Software Tips
0:00 / 0:00
Down or Just Slow? | System Design Music Video (Distributed Systems)
204 просмотра · 12 дн. назад
James Software Tips
71 подписчик
204 просмотра · 12 дн. назад
You sent a message and nothing came back. Is the other server down, or just slow? From where you're standing, you can't tell. An electronic pop song about the trouble with distributed systems: lost messages, timeouts, clocks that drift, last-write-wins losing data, process pauses, leases, fencing tokens and majority votes.
Along the way: four different failures that all look like silence, a timeout that calls a healthy server dead, a "red" write that vanishes because one clock was two seconds behind, a leader that freezes for fifteen seconds and wakes up still thinking it's the boss, and a file that says "no, I've already seen thirty-four."
Every frame is code-rendered and synced to the lyrics. Part of the System Design Music Videos series.
Chapters
0:00 I sent you a message, are you down or just slow?
0:17 Lost on the wire, or did B just die?
0:33 Silence, so you pick a timeout
0:49 Chorus: I can't tell from here
1:13 Every server has its own clock
1:28 Last write wins, and the red write vanishes
1:45 Chorus: are you right, or just fast?
2:05 The leader freezes, the lease runs out
2:21 Fencing tokens: 33 vs 34
2:37 Chorus: are you real, or a ghost?
2:53 Bridge: two out of three agree
3:12 Final chorus: we decide it together
3:32 Outro
Concepts follow chapter 9 of Designing Data-Intensive Applications (2nd edition) by Martin Kleppmann and Chris Riccomini. Highly recommended.
James Reinhardt | software engineer writing about operating systems, data systems and the craft of building software.