By Ajay Paul- “Code maker-Code breaker.”
Consistency is only possible by replicating all data to all nodes before it is read again but for that to happen, we have to prevent any further reads till all nodes are updated, so availability takes a hit.
If the system is to be made available, we need to allow clients to read data, including stale data from any node before the consistency goal is achieved.
Partition tolerance is total communication breakdown(i.e dropped partitions, slow network connections, or unavailable network connections between nodes.) between nodes which is extremely rare, a delayed sync between nodes can be termed as such, which however is limited to that specific time only. In ideal situations, storage provides all three features, But the CAP theorem maintains that when a distributed system causes a network failure, either consistency or availability can be provided as a tradeoff. All other times, all three can be provided. But, in the event of a network failure, a choice must be made.
In reality, partition tolerance is a must. Any distributed system, by nature, operates with network partitions. Network failures will happen, so to offer any kind of reliable service, partition tolerance is necessary — the P of CAP.
So CAP theorem is simply Consistency vs Availability and not any of two out of three.
We at CaratLane are solving some of the most intriguing challenges to make our mark in the relatively uncharted omnichannel jewellery industry. If you are interested in tackling such obstacles, feel free to drop your updated resume/CV to firstname.lastname@example.org!