ETCD
ETCD
ETCD
- 高可用分布式kv数据库, 常用于服务发现
- 使用raft算法保持一致性, go语言实现
- CAP理论中实现了CP
- CAP理论: CAP是不可能三角
- 对于一个分布式系统来说, P必须实现
- C 数据一致性
- A 可用性
- P 分区容忍性
etcd架构

- Store
- kv数据库存储引擎
- WAL(write ahead logging)
- 记录增量日志
- Snapshot
- 防止数据过多而进行的状态快照
- 每10000条数据(大约)进行一次快照, 全量数据, 快照生成后可用删除WAL(防止WAL过多, 占用内存)
核心机制
- 租约机制 TTL
- Watch机制
- watcher会监听某个key的变化
This post is licensed under CC BY 4.0 by the author.