在分布式系 统中通过协调达成共识是普遍需求,部署在多台服务器 间的进程都需要通信协调将关键数据达成一致。两 将军问题首先提出不可 靠网络的共识问题,然后逐步演化为存在拜占庭故障 的拜占庭将军问题,通过对问题的分析提出原子广播解决方案,鉴千原子广播无法支 撑数据持久化能力,业界提出 改进优化 的视图复制 ( VR) 和 PAXOS, 鉴千 PAXOS的理论复杂度,业界又提出 RAFT, 它将 PAXOS用更简单的方式描述,同时参考VR的工程实现优化,如图 2-18( a) 所示。
共识技术要支 待数据 待久化能力会用到日志复制技术 。而分布式存储系统需要做数据冗余,也需要实现数据复 制。数据复制 需要基千一致性模型设计 ,分为 客户端一致性模型、数据副 本一致性模型 。一致性模型的 需求影响数据复 制协议的实 现,复制协议分为两 类:基于主复制协议和客户端写复制协议,如图2-18( b) 所示。共识技术和复制技术 存在的关联性,就是基于主复制协议。同时 复制协议也影响一致性,并和 CAP理论有关联,值得深入 的分析和研究 。
图2-18 共识和复制对比