Zookeeper设计的思想

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

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

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

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

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

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

相关推荐
磐链科技9 小时前
交场景下的钱包开发痛点:并发交易与消息推送的分布式一致性技术方案
分布式
浪兎兎10 小时前
【Kubernetes 实战】(二)部署 Ruoyi-Cloud —— 部署服务
云原生·容器·kubernetes
大大大大晴天13 小时前
K8S 在大数据里的真正价值:适用场景、收益边界与不适合的地方
大数据·云原生
Henry-SAP13 小时前
AI与机器人信息新闻
人工智能·云原生·sap·erp
阿里云云原生14 小时前
深入解析阿里云 SysOM AI Profiling:如何实现零侵入的AI作业全生命周期观测?
云原生
程序员与背包客_CoderZ14 小时前
高性能分布式KV存储引擎RocksDB入门与C/C++编码实战
c语言·开发语言·数据库·c++·分布式·分布式数据库·rocksdb
陈聪.15 小时前
Kubernetes 中 Pod 的全面知识
云原生·容器·kubernetes
SakitamaX15 小时前
k8s中的控制器的使用
云原生·容器·kubernetes
汽车仪器仪表相关领域16 小时前
ZDT‑I伺服电机测试系统:四象限动态加载
大数据·数据库·分布式·功能测试·汽车·压力测试·可用性测试
骇客野人18 小时前
Java分布式任务调度方案(完整落地指南)
java·开发语言·分布式