分布式:CAP/BASE 与一致性协议
CAP 不可能三角、BASE 妥协,Raft/Paxos 选主与日志复制的核心思想。
本节你将能
说清一致性与可用性的权衡,以及 Raft 如何落地共识。
核心要点
- CAP:分区容错 P 必选,只能在 C(强一致)与 A(高可用)间取舍;实际是 CP/AP 选择。
- BASE:基本可用、软状态、最终一致,是对 CAP 的工程化妥协。
- Raft:易理解的共识算法,角色 Leader/Follower/Candidate,任期+投票选主。
- 日志复制:Leader _append + 多数派确认后提交;心跳维持权威、选举超时触发换代。
- Paxos:理论基石,难实现;Raft 是其工程化版本(etcd/Consul 用 Raft)。
面试连招
常被追问:为什么 CAP 不能三者兼得?Raft 如何保证日志一致?ZAB 与 Raft 区别?
常见坑
把 AP 系统当成强一致用;忽略网络分区下的脑裂;混淆共识与一致性的概念。