Eureka、Zookeeper和Consul区别及CAP架构对比—SpringCloud(H版)微服务学习教程(18)

Java技术 潘老师 7个月前 (03-25) 465 ℃ (0) 扫码查看

经过前面我们对Eureka、Zookeeper和Consul的学习,他们都可以实现服务注册中心,下面我们针对这3者做一个简单地对比,我们汇总为如下表格:
Eureka、Zookeeper和Consul区别及CAP架构对比—SpringCloud(H版)微服务学习教程(18)
针对CAP理论的补充:

CAP定理:CAP定理又称CAP原则,指的是在一个分布式系统中,一致性(Consistency)、可用性(Availability)、分区容错性(Partition tolerance)。CAP 原则指的是,这三个要素最多只能同时实现两点,不可能三者兼顾。

一致性(Consistency):
数据在多个副本之间能够保持一致的特性(强一致性)。就像Redis的主从结构,Zookeeper的Master/Slave结构,主从之间的数据保持一致,这些都是最终一致性。
可用性(Availability):
系统一直处于可用状态,能正常响应数据,但是不保证响应数据为最新数据。
分区容错性(Partition tolerance):
分布式系统在遇到网络故障的时候,仍然能够对外提供满足一致性和可用性的服务,除非整个网络环境都发生了故障。

一般来讲,基于网络的不稳定性,分区容错是不可避免的,所以我们默认CAP中的P总是成立的。

CAP经典图:

Eureka、Zookeeper和Consul区别及CAP架构对比—SpringCloud(H版)微服务学习教程(18)

AP架构:

当网络分区出现后,为了保证可用性,系统B可以返回旧值,保证系统的可用性。
结论:违背了一致性C的要求,只满足可用性和分区容错,即AP
Eureka、Zookeeper和Consul区别及CAP架构对比—SpringCloud(H版)微服务学习教程(18)
CP架构:

当网络分区出现后,为了保证一致性,就必须拒接请求,否则无法保证一致性
结论:违背了可用性A的要求,只满足一致性和分区容错, 即CP
Eureka、Zookeeper和Consul区别及CAP架构对比—SpringCloud(H版)微服务学习教程(18)


版权声明:本站所有文章,如无特殊说明,均为本站原创。全部下载资源版权归原作者所有。任何个人或组织,若未征得本站同意,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。若需转载请注明文章来源。
本文链接:Eureka、Zookeeper和Consul区别及CAP架构对比—SpringCloud(H版)微服务学习教程(18)
喜欢 (0)
请潘老师喝杯Coffee吧!】
分享 (0)
用户头像
发表我的评论
取消评论
表情 贴图 签到 代码

Hi,您需要填写昵称和邮箱!

  • 昵称【必填】
  • 邮箱【必填】
  • 网址【可选】

您也可以 微信登录 来发表评论!