Distributed systems enable computation and data storage across multiple independent nodes that coordinate to appear as a single coherent system, powering everything from cloud databases and microservices to content delivery networks and blockchain platforms. As systems scale beyond single machines and geographic boundaries, understanding the fundamental tradeoffs—between consistency, availability, and partition tolerance—becomes critical for architects building resilient global infrastructure. This cheat sheet covers the essential concepts that define how distributed systems achieve consensus, maintain consistency, handle failures, and replicate data, providing the theoretical foundations and practical patterns that every engineer working with distributed architectures must grasp to build systems that remain correct under real-world network failures and concurrent operations.
What This Cheat Sheet Covers
This topic spans 18 focused tables and 128 indexed concepts. Below is a complete table-by-table outline of this topic, spanning foundational concepts through advanced details.
Table 1: CAP Theorem and Fundamental Tradeoffs
| Concept | Example | Description |
|---|---|---|
Choose 2 of 3: C+A (no-P), C+P, A+P | Only two of three guarantees possible simultaneously in presence of network partition: Consistency, Availability, Partition tolerance. | |
All nodes see same data at same time | • Every read receives the most recent write or an error • all replicas must agree before responding. | |
Every request gets non-error response | • System responds to every request even if some nodes are down • may return stale data during partition. | |
System continues despite network split | System operates correctly even when network messages are lost or delayed between nodes. |