System Design - Fundamentals
This is Chapter 1 of the System Design series. Architecture reviews and design discussions keep coming back to the same vocabulary regardless of what’s being built. I keep this list so I’m reasoning from consistent definitions each time, not re-deriving the same trade-offs from scratch. Core concepts Systems Always Lose Consistency - CAP Is Fundamental Scalability Availability Latency Consistency CAP Idempotency Fault tolerance 1. Scalability Vertical scaling (bigger machine) buys time but hits a ceiling fast and creates a single point of failure. Horizontal scaling (more machines) is the default for anything expected to grow past a single box, at the cost of needing to handle state, coordination, and partial failure across nodes. 2. Availability Usually expressed in nines: ...