CAP 理论 - zookeeper 和 eureka 比较

CAP理论指出分布式系统无法同时保证一致性、可用性和分区容错性。Zookeeper保证CP,当master节点故障时,会进行 leader 选举,导致服务短暂不可用。而Eureka则优先保证AP,即使部分节点失效,服务注册仍能继续,牺牲了一致性。
摘要由CSDN通过智能技术生成

前言

著名的CAP 理论指出,一个分布式系统不可能同时满足C(一致性)、A(可用性)和P(分区容错性)。
由于分区容错性是分布式系统中必须要保证的,因此我们只能在A 和C 之间进行权衡。

Zookeeper 保证CP

在Zookeeper 中,当master 节点因为网络故障与其他节点失去联系是,剩余节点会重新进行leader 选举,但问题在于,选举leader 需要一定时间,且选举期间整个Zookeeper 集群不可用,这导致在选举期间注册服务瘫痪。在云部署的环境下,因网络问题使Zookeeper 集群失去master 节点是大概率事件,虽然服务最终能够恢复,但在选举期间内容导致服务注册长期不可用是难以容忍的。

Eureka 保证AP

Eureka 优先保证可用性,Eureka 各个节点是平等的,某几个节点挂掉不会影响正常节点的工作,剩余节点依然可以提供注册和查询服务。而Eureka 的客户端在向某个Eureka 注册时如果发现连接失败,则会自动切换到其他节点,只要有一台Eureka 还在,就能保住注册服务可用(保证可用性),只不过查询的信息可能不是最新的(不保证强一致性)。
例如:一台服务注册到某台注册中心,该注册中心来不及向其他注册中心进行复制信息,直接宕机。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值