CAP
CAP原则,指的是在一个分布式系统中,Consistency(一致性)、Availability(可用性)、Partition Tolerance(分区容错性),不能同时成立。
一致性:它要求在同一时刻点,分布式系统中的所有数据备份都处于同一状态。
可用性:在系统集群的一部分节点宕机后,系统依然能够响应用户的请求。
分区容错性:在网络区间通信出现失败,系统能够容忍。
一般来讲,基于网络的不稳定性,分布容错是不可避免的,所以我们默认CAP中的P总是成立的。一致性的强制数据统一要求,必然会导致在更新数据时部分节点处于被锁定状态,此时不可对外提供服务,影响了服务的可用性,反之亦然。
因此一致性和可用性不能同时满足。
例如:服务注册和发现组件中,Eureka满足了其中的AP,Consul和Zookeeper满足了其中的CP。