De CAP-stelling stelt dat een gedistribueerd systeem maximaal twee van drie eigenschappen kan garanderen — Consistency, Availability en Partition tolerance — tegelijk. Omdat netwerkpartities onvermijdelijk zijn, betreft de echte keuze het kiezen tussen consistentie en beschikbaarheid tijdens een partitie.
De drie eigenschappen
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.
