关于注册中心的CAP定理。

C.Consistency 数据一致性

不一样节点请求或屡次请求。数据要一致。(多个节点数据同步须要时间)
复制代码

A.Availability 服务可用性

发起请求,必需要有响应(要在规定时间返回结果)
复制代码

P.Partition tolerance 分区容错性

大多数分布式系统都分布在多个子网络。由于如今的网络问题,基本都会出现访问失败,因此必定要有分区容错性。那么P就必定要有。(分布式系统都有多个节点,挂掉部分也要继续可用,若是没有的话,有些请求就一直返回失败,直到问题解决。)
复制代码

CAP定义 。这三个指标不可能同时作到。

CA:
    保证了数据一致性和服务的可用性。 
    由于如今的网络环境。基本都会出现访问失败。因此不可能不要分区容错性。
    CA架构很难实现。
CP:
    保证了数据的一致性和分区容错性。
    分区容错性有了,那么就须要多个节点,数据同步就须要时间。
    当时间上去了,为了保证数据的一致性。服务须要时间等待数据同步完成才获取数据,等待时间太久就会致使服务不可用。就至关于不能实现A。
AP:
    保证了服务的可用性和分区容错性。
    分区容错性有了,那么就须要多个节点。须要保证服务可用性,就须要快速响应。
    要快速响应,就不能等待数据同步完成才响应。
    因此就会致使数据非一致性,至关于不能实现C。
复制代码

在保证了分区容错性P的状况下。 C和A是冲突。

要保证数据一致性。那么就须要时间。须要时间。服务可用性就不能知足了。
要保证服务可用性,那么就须要尽快返回。要速度快,就表示数据来不及同步。因此就不能保证数据一致性。
复制代码

CP: Zookeeper,Consul,etcd 若是你要保证数据一致性,那么就用CP的。网络

AP: Eureka 若是你要保证服务可用性。那就用AP的架构

相关文章
相关标签/搜索