Zookeeper设计的思想

ZooKeeper设计的目的是提供高性能、高可用、顺序一致性的分布式协调服务、保证数据最终一致性。

高性能(简单的数据模型)

1: 采用树形结构组织数据节点;
2: 全量数据节点,都存储在内存中;
3: Follower 和 Observer 直接处理非事务请求;

高可用(构建集群)
1: 半数以上机器存活,服务就能正常运行
2: 自动进行 Leader 选举

顺序一致性(事务操作的顺序)
1: 每个事务请求,都会转发给 Leader 处理
2: 每个事务,会分配全局唯一的递增id(zxid,64位:epoch + 自增 id)

最终一致性
1: 通过提议投票方式,保证事务提交的可靠性
2: 提议投票方式,只能保证 Client 收到事务提交成功后,半数以上节点能够看到最新数据

相关推荐
独隅11 小时前
it+云原生:GitOps实践指南-K8s配置版本管理
git·elasticsearch·云原生
AI攻城狮12 小时前
马斯克为何一定要干掉 OpenAI?这不只是恩怨,而是一场 AI 时代的产权之战
云原生
长河12 小时前
XXL-JOB 从本地快速上手到核心架构深度解析
分布式
juniperhan12 小时前
Flink 系列第22篇:Flink SQL 参数配置与性能调优指南:从 Checkpoint 到聚合优化
大数据·数据仓库·分布式·sql·flink
wapicn9921 小时前
微服务架构下的数据核验设计,API接入最佳实践
微服务·云原生·架构
juniperhan21 小时前
Flink 系列第21篇:Flink SQL 函数与 UDF 全解读:类型推导、开发要点与 Module 扩展
java·大数据·数据仓库·分布式·sql·flink
AI攻城狮1 天前
对AI泡沫的地狱式批判,你认可吗?
云原生
面汤放盐1 天前
从单体架构到微服务架构:模式与最佳实践
微服务·云原生·架构
木雷坞1 天前
K8s GPU 推理服务 ImagePullBackOff 排查与预热
云原生·容器·kubernetes·gpu算力
marsh02061 天前
41 openclaw分布式会话管理:跨服务状态同步方案
分布式·ai·编程·技术