CAP theorem (Brewer’s theorem)

Het CAP theorem is het idee dat een gedistribueerd computersysteem niet in staat is om tegelijkertijd partitietolerantie, consistentie en beschikbaarheid te bieden.  

De theorie stelt voor dat wanneer een netwerk is gepartitioneerd om ervoor te zorgen dat een netwerkstoring de communicatie tussen servers niet zal verhinderen, het gedistribueerde systeem moet kiezen tussen consistentie of beschikbaarheid.

Het CAP theorem is vooral nuttig gebleken voor het vaststellen van prioriteiten in de infrastructuur en configuratie van databaseservers. In een dergelijk scenario is het nog steeds mogelijk om zowel consistentie als beschikbaarheid binnen aanvaardbare parameters te bereiken. Zo kan bijvoorbeeld worden toegestaan dat gegevens gedurende korte perioden inconsistent zijn terwijl nieuwe schrijfacties zich door het systeem verspreiden. Of kritieke servers die lees- en schrijfacties van cliënten afhandelen, kunnen zodanig worden gepartitioneerd dat storingen in andere secties geen merkbare gevolgen hebben voor de prestaties van eindgebruikers.

CAP-theorema is in 2000 ontwikkeld door Eric Brewer.