Zookeeper 中的 CAP

一致性 C: Zookeeper 是强一致性系统,为了保证较强的可用性,"一半以上成功即成功"的数据同步方式可能会导致部分节点的数据不一致。所以 Zookeeper 还提供了 sync() 操作来做所有节点的数据同步,这就关于 C 和 A 的选择问题交给了用户,因为使用 sync()势必会延长同步时间,可用性会有一些损失。

可用性 A: Zookeeper 数据存储在内存中,且各个节点都可以相应读请求,具有好的响应性能。Zookeeper 保证了数据总是可用的,没有锁。并且有一大半的节点所拥有的数据是最新的。

分区容忍性 P: Follower 节点过多会导致增大数据同步的延时(需要半数以上 follower 写完提交)。同时选举过程的收敛速度会变慢,可用性降低。Zookeeper 通过引入 observer 节点缓解了这个问题,增加 observer 节点后集群可接受 client 请求的节点多了,而且 observer 不参与投票,可以提高可用性和扩展性,但是节点多数据同步总归是个问题,所以一致性会有所降低。

相关推荐
hj2862516 小时前
Linux 磁盘管理 + 文件系统 + LVM 笔记整理
linux·运维
.YYY7 小时前
Linux--如何安装rockyLinux9虚拟机
linux
kdxiaojie7 小时前
U-Boot分析【学习笔记】(12)
linux·笔记·学习
Bert.Cai8 小时前
Linux let命令详解
linux·运维·服务器
枕星而眠8 小时前
Linux 线程:原理、属性、实战与面试避坑
linux·运维·c语言·面试
晚风予卿云月8 小时前
【Linux】环境变量概念、作用、配置与修改详解
linux·运维·服务器·环境变量
r-t-H8 小时前
从零开始搭建CDH-第十二章
linux·hive·spark·centos·hbase
心中有国也有家8 小时前
hccl 架构拆解:昇腾集合通信库到底在做什么?
人工智能·经验分享·笔记·分布式·算法·架构
~黄夫人~8 小时前
零基础速通|Windows&Linux 常用命令行对照表大全
linux·运维·windows·笔记·备忘录·整理表格
benjiangliu8 小时前
LINUX系统-17-EXT系列文件系统(二)
linux·运维·服务器