CAP定理 在理論計算機科學中CAP定理CAP theorem又被稱作布魯爾定理Brewers theorem它指出對於一個分布式计算系統來說不可能同時滿足以下三點 一致性Consistency 等同于所有节点访问同一份最新的数据副本 可用性Availability每次请求都能获取到非错的响应但是不保证获取的数据为最新数据 分区容错性英语Network partitionPartition tolerance以实际效果而言分区相当于对通信的时限要求系统如果不能在时限内达成数据一致性就意味着发生了分区的情况必须就当前操作在C和A之间做出选择 根據定理分佈式系統只能滿足三項中的兩項而不可能滿足全部三項理解CAP理论的最简单方式是想象两个节点分处分区两侧允许至少一个节点更新状态会导致数据不一致即丧失了C性质如果为了保证数据一致性将分区一侧的节点设置为不可用那么又丧失了A性质除非两个节点可以互相通信才能既保证C又保证A这又会导致丧失P性质