架构师训练营 - 第六周 - 作业一
作业
请简述 CAP 原理
CAP
CAP原则
在一个分布式系统中,最多只能满足一致性、可用性、分区容错性其中的两项。
一致性 Consistency
分布式系统是否对外保持一致;简单的理解就是在同一时刻访问系统任何一个节点,返回数据相同。
可用性 Availability
如果系统中部分节点出现故障,系统是否可以继续提供服务。
分区容错性 Partition Tolerance
如果节点处于不同的机房,那么如果出现网络故障,导致节点不能相互通信,系统该如何处理。
为什么不能CAP
因为选择了P就代表一定要部署多个机房,节点之间通过网络通信,而网络是不可靠的,由此,选择了P,CA不能两全。
CA AP CP
CA,如果对于系统高可用要求不高,可以选择CA。
AP,舍弃了C,换来了系统的高可用,可以通过最终一致性来补齐C。
CP,舍弃了A,换来了系统的一致性。
业界相关工具
Consul
基于Raft协议,CP
ZooKeeper
基于Zab协议,CP
评论