Zookeeper分布式一致性理论
分布式系统是一个硬件或软件组件分布在不同的网络计算机上,彼此之间只通过消息传递进行通信的网络组件;
分布性:多台计算机在空间上随意分布
对等性:组成分布式系统的所有组件都是对等的,副本机制分为数据副本与服务副本
并发性:分布式系统中多个节点操作共享资源
缺乏全局时钟:分布式系统通过消息通信,缺乏全局时钟序列控制
故障总是会发生:任务设计阶段考虑到的故障总是会发生
分布式环境的问题:
通信异常:DNS、 网络光纤、路由器、系统异常
网络分区:网络延时导致部分节点无法通信,只有部分节点能正常通信
三态:成功、失败、超时 由于网络通信的不稳地无法确定消息是否被处理
如果实现一套基于acid的事务,会使可用性和一致性产生冲突
cap理论:一个系统不可能同时满足一致性、可以性、分区容错性。这三个基本需求最多只能同时满足其中的两项
base理论:基于cap理论的演化,无法做到强一致性但应通过某种方法达到最终一致性,
- 基本可用
- 响应时间的损失(延长响应时间)
- 功能上的损失(服务降级)
- 弱状态
- 最终一致性