引言
- 本文介绍了CAP原理;
CAP原理
- 在一个分布式系统中,Consistency(数据一致性)、 Availability(服务可用性)、Partition tolerance(分区容错性),三者不可兼得;
- 一般来说,分布式系统优先实现P和A,C用最终一致性代替;
详细解释
- 一致性:All nodes see the same data at the same time;
- 可用性:A non-failing node will return a reasonable response within a reasonable amount of time (no error or timeout);
- 分区容错性:出现消息丢失或者分区错误时系统能够继续运行;
使用案例
- 保证CP牺牲A:当系统不同节点间通讯中断、不能及时同步数据时,为了保证数据一致,此时对用户请求返回error错误信息,即系统暂时不可用;
- 保证AP牺牲C:有可能向用户返回旧数据,即脏读;
- 保证AC牺牲P:系统中只有一个节点,已经不是分布式系统;