分布式系统一致性理论 CAP定理 一致性:所有节点同时看到相同数据 可用性:每个请求都能响应 分区容错:网络分区时系统继续运行 三者只能满足其二,通常选择AP或CP。 BASE理论 BA:基本可用 S:软状态 E:最终一致性 是CAP的折中方案,适合高可用场景。 一致性模型 强一致性 线性一致性:操作按全局顺序 顺序一致性:单机进程顺序 因果一致性:因果操作有序 实现:Raft、Zab、Paxos协议 弱一致性 最终一致性:保证达到一致 读己之写:用户能读到自己的写 会话一致性:会话内单调读写 实现:Gossip协议、向量时钟 分布式共识算法 Raft Leader选举:超时触发选举 日志复制:Leader同步日志到Follower 安全性:选举限制、日志匹配 Paxos
三者只能满足其二,通常选择AP或CP。
是CAP的折中方案,适合高可用场景。
实现:Raft、Zab、Paxos协议
实现:Gossip协议、向量时钟
ZooKeeper专用,类似Raft但支持广播。
协调者-参与者两阶段提交,阻塞且单点故障。
增加CanCommit阶段,降低阻塞概率但仍不完美。
长事务拆分短事务,补偿操作回滚。
业务DB存消息,定时任务扫描发送。