Distributed Systems
ELI5 - The Vibe Check
A distributed system is what you get when your application isn't running on one computer anymore, it's running on many computers that have to cooperate over a network, which sounds convenient until you remember networks fail, clocks drift, and messages arrive out of order or not at all. Everything that's easy on a single machine, like knowing what happened first, becomes a genuine research problem the moment you spread it across a fleet.
Real Talk
A distributed system is a collection of independent computers that communicate over a network and coordinate to appear to users as a single coherent system. It introduces challenges absent from single-machine computing, including partial failure, network partitions, unreliable message ordering, and the impossibility of perfect global clock synchronization, formalized by results like the CAP theorem and the Two Generals Problem.
When You'll Hear This
"That bug only shows up in distributed systems, it works fine locally because there's no network to lie to you." / "We went from a monolith to a distributed system and inherited a whole new category of 3am pages."
Related Terms
CAP Theorem
The CAP theorem says a distributed database can only guarantee two out of three things: Consistency (everyone sees the same data), Availability (every requ...
Distributed Database
A distributed database spreads your data across multiple computers that work together like a hive mind. If one server dies, the others pick up the slack.
Distributed Tracing
Distributed tracing is request tracing's big brother — it works across multiple services, servers, and even data centers.
Fault Tolerance
Fault tolerance is designing a system that assumes parts of it will break, so it plans for that instead of hoping it doesn't happen.
High Availability
High availability means your system keeps running even when a piece of it inevitably fails, because in production, something is always failing somewhere.