The CAP theorem states that a distributed system can guarantee at most two of three properties — Consistency, Availability, and Partition tolerance — at the same time. Since network partitions are unavoidable, the real choice is between consistency and availability during a partition.
The three properties
CONSISTENCY (C) → every read sees the latest write (all nodes agree on the data)
AVAILABILITY (A) → every request gets a response (the system stays responsive)
PARTITION TOLERANCE (P) → the system keeps working despite network partitions
(communication breaks between nodes)
→ CAP: you can only fully guarantee TWO of these three simultaneously.
