CAP isn't "pick two of three"
transcript
CAP. Consistency, availability, partition tolerance. Pick two, right? Wrong. In a real system, you don't get to drop one of them.
A client writes 100 to node A. But the network splits. A can't reach node B. Another client asks B for the value. B never heard about the write. So what should B do?
Option one: refuse. Error, or timeout, until B can check with A. That's CP. ZooKeeper and etcd. Right for money. Better an error than a wrong balance. Option two: answer with what B has. Maybe stale. That's AP. Cassandra, even DNS. A stale bio for a few seconds is fine.
Here's the twist. Partitions will happen. So P is a given. Consistent and available with no partitions? That's a single node. Not a distributed system.
So the interviewer asks how you'd ensure consistency. Weak answer: use a consistent database. Strong answer: balances are CP, with synchronous replication. The feed is AP. A post a few seconds late is fine.
You don't pick two of three. In a partition, you pick one of two. And different parts of one system can pick differently.
Full breakdown in the lecture.