With the technical landscape being distributed, you will have heard of the CAP Theorem, as it related to the systems that you work on to be 99.99999% up. These are my $0.02 on my understanding of the CAP Theorem.
* Consistency – read/write guarantee between nodes
* Availability – nodes respond and do no error out
* Partition Tolerance – system still functions when network goes berserk
Let’s face it: networks are unreliable. Period. So, the theorem states that you can only really guarantee 2 out of the 3 above, specifically:
CP – consistency and partition tolerance
AP – availability and partition tolerance
The difference is which one to to choose, and it all depends on your business requirements.
* CP when requirements dictate atomic read and writes
* AP when data consistency is flexible around data synchronization