微服务架构中,选择的是哪种治理组件

微服务架构中,选择的是哪种治理组件(eureka zookeeper)?为什么?
思路:技术选型来答.(CAP理论)
CAP:理论已经被验证正确了,是分布式环境下一个基础理论.很多技术选型都要考虑到理论的使用
C: consistence 数据一致性
A: avalibility 系统可用性
P: partition/partition tolerence 分区/分区容忍度

P:分区和分区容忍度,在分布式环境中,一旦出现网络波动,故障,异常,数据相互之间不可通信造成了分区的出现,一旦涉及到分区出现时的读写要求.考虑分区容忍度.
C:数据一致性,如果分区出现时,对于分布式数据进行写操作,要求数据有一致性,要求数据不必要一致
要求数据一致性:保证操作时,加锁,加事务
分区容忍度–高--数据一致性要求高
要求不必要一致:不需要加锁,加事务
分区容忍度–低--一致性要求低
A:可用性,在分区出现时,要求数据有一致性,加锁加事务,导致系统可用性降低,不要求数据一致性,不加锁事务,系统可用性提高

CAP结论:不可能CAP同时存在,只能同时满足2个

CA:网络通畅无比,没有分区,一致性能满足,可用性能满足(很难实现 P分区不出现)

CP:分区出现时,要求数据一致性,忽略可用性

AP:分区出现时,要求可用性,不能保证一致性

CP:支付时,必须保证数据一致.(支付平台必须和银行账户一致)

AP:做应用系统,基本保证可用性(访问的电商网站大部分功能)

eureka治理组件:
管理服务信息时,有没有保证一致性(任何时间点,系统所有角度观察数据都是完全一致的).
eureka并没有实现强数据一致性的保证
服务提供者宕机,eureka注册信息最晚多长时间才剔除 120秒
可用性比较高,不会因为维护一致性消耗可用性的效果

zookeeper治理组件:
管理的注册信息是强一致性的,任意时间点观察其中的数据所有角度都是一致的,所以可用性降低了.
为什么使用zookeeper (看中强一致性,一致性不会让可用性那么差 网络比较通畅)
为什么使用eureka(看中可用性,网络环境比较差,只能选择可用性)
BASE理论:基本可用,数据保持最终一致性,是CAP理论延伸

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值