加载中...
分布式系统由多台通过网络连接的计算机协同完成任务,解决单机无法承载的规模和可靠性需求。CAP 定理是理解其设计取舍的核心框架,Kafka、Zookeeper、etcd 是最常见的分布式基础组件。

| 类型 | 计算机系统架构 |
| 核心理论 | CAP 定理(2000)、Raft 共识算法(2013) |
| 代表组件 | Kafka、ZooKeeper、etcd、Cassandra |
2000 年 Eric Brewer 提出 CAP 定理:分布式系统无法同时满足一致性(所有节点读到相同数据)、可用性(请求总能得到响应)、分区容忍性(网络分区时系统仍能运行)三者。由于网络分区是分布式系统的常态,实践中只能选 CP 或 AP。
ZooKeeper、etcd 是 CP 系统(一致性优先,网络故障时可能拒绝写入);DynamoDB、Cassandra 是 AP 系统(可用性优先,允许短暂数据不一致,用「最终一致性」收敛)。选型要看业务:银行账户余额必须 CP,社交网络点赞数选 AP 完全可以接受。[1]
多节点如何就「谁是主节点」达成一致?这是分布式共识问题。Paxos 算法(Lamport,1989)是理论基础,但实现极为复杂。Raft(2013,Ongaro & Ousterhout)是专为工程可读性设计的替代品,etcd、TiKV、CockroachDB 均采用 Raft。

| 类型 | 计算机系统架构 |
| 核心理论 | CAP 定理(2000)、Raft 共识算法(2013) |
| 代表组件 | Kafka、ZooKeeper、etcd、Cassandra |
登录 后参与讨论
暂无讨论,来发表第一条评论吧