0 day streak
9. Distributed systemsPartial failure

Partial failure

Partial failure is what makes distributed systems hard: when your program runs on many machines joined by a network, some pieces can break while the rest keep going. On a single computer a crash usually takes everything down at once, so at least you know where you stand. Across a network, a request that gets no reply might mean the other machine crashed, your message was lost, the reply was lost, or the machine is just slow, and from the outside these all look the same. All you can really do is wait a while and then guess. That uncertainty is why distributed systems lean on timeouts, retries, and designs that stay correct even when the guess turns out wrong.

In this lesson: Free play in the cluster sandbox.