A distributed store facing a network partition must give up either consistency or availability.
Brewer conjectured it in 2000; Gilbert and Lynch proved it in 2002. Because partitions do happen, the real choice is made in advance: banking systems pick consistency and refuse service, while shopping carts pick availability and reconcile later.
In practice
- A payments company chooses to refuse a transaction rather than risk a double spend; a social feed chooses to show a stale post rather than nothing.
- A shop's card terminal declines during an outage while its loyalty app cheerfully awards points it may later revoke.
- Further reading
- Wikipedia
- Subject
- Technology & Software
- Essay
- The curves, the limits and the laws of software