BASE 理论简介

本文探讨了BASE理论,即基本可用、软状态和最终一致性,作为CAP定理下一致性和可用性权衡的产物。深入分析了Zookeeper遵循CP原则,确保一致性但可能牺牲可用性,以及Eureka选择AP,保证可用性却放弃一致性的情况。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

	BASE 是 Basically Available(基本可用)、Soft state(软状态)和
 Eventually consistent(最终一致性)三个短语的简写。是 CAP 定理对于一
 致性与可用性权衡的结果。
	BASE 理论的核心思想是:即使无法做到强一致性,但每个系统都可以根据自身的业务
特点,采用适当的方式来使系统达到最终一致性。
  • (1) 基本可用
    基本可用是指分布式系统在出现不可预知故障的时候,允许损失部分可用性。
    • 响应时间的损失:
    • 功能上的损失:
  • (2) 软状态
    • 软状态,是指允许系统数据存在的中间状态,并认为该中间状态的存在不会影响系统的
      整体可用性,即允许系统主机间进行数据同步的过程存在一定延时。软状态,其实就是一种
      灰度状态,过渡状态。
  • (3) 最终一致性
    • 最终一致性强调的是系统中所有的数据副本,在经过一段时间的同步后,最终能够达到
      一个一致的状态。因此,最终一致性的本质是需要系统保证最终数据能够达到一致,而不需
      要实时保证系统数据的强一致性。

举例

1.6.3 ZK 与 CP

	zk 遵循的是 CP 原则,即保证了一致性,但牺牲了可用性。体现在哪里呢?
当 Leader 宕机后,zk 集群会马上进行新的 Leader 的选举。但选举时长一般在 200 毫秒
内,最长不超过 60 秒,整个选举期间 zk 集群是不接受客户端的读写操作的,即 zk 集群是
处于瘫痪状态的。所以,其不满足可用性。
Eureka 保证了 AP,牺牲了 CP。即其保证了可用性,但无法保证一致性。

1.7zk 可能会存在脑裂

	这里说的 zk 可能会引发脑裂,是指的在多机房部署中,若出现了网络连接问题,形成
多个分区,则可能会出现脑裂问题,可能会导致数据不一致。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值