CAP理论扩展
概述
- 对于分布式框架而言,基本上都会遵从CAP三大理论
- CAP(CAP理论是从客户端角度出发的!!!)
- C(Consistency):一致性。在一段时间内,访问这个集群获取到的数据是相同的。注意,此时,在一个时间段内,不要求每一台服务器的数据都一样,只要保证客户端获取到的数据一样就行
- A(Availability):可用性。当客户端对集群中的节点发起请求的时候,节点能够在合理的时间内(一般理解为立刻)进行响应-时效性。注意,此处的可用性和服务器的高可用不是一回事!!!
- P(Partition Tolerance):分区容忍性。当集群中的某一个或者一部分节点产生故障的时候,不会影响集群其他功能的使用和运行。注意,服务器的高可用指的是分区容忍性
- CAP经过严格的理论证明,无法同时满足。对于集群而言首先要考虑满足P。所以一个集群要么是CP结构要么是AP结构
一致性方式
- 主从(Master-Slave,简称为M/S)结构:通过一个主节点来管理其他的从节点,客户端只能通过访问主节点来获取数据
- PAXOS算法及其变种,例如ZAB协议就是PAXOS的变种算法
- WNR策略。W表示写入节点数量,R表示读取节点数量,N表示总结点数量,只要W+R>N,就能保持数据一致性