第二章-一致性

目录

一、一致性概括

二、一致性的类型

三、弱一致性、强一致性、多数派模型

四、强一致性模型(同步)衍生出的问题 


一、一致性概括

        在分布式系统中,一致性(Consistency)是指多副本(Replications)问题中的数据一致性。

二、一致性的类型

  • 事务一致性;
  • 数据一致性 

        本文所讨论的是分布式环境中的数据一致性问题; 

三、弱一致性、强一致性(多数派模型)

    3-1.弱一致模型:

        弱一致性指的是数据复制的过程是异步的。数据更新后,能容忍后续的访问只能访问到部分或者全部访问不到,我们经常提到的最终一致性就是弱一致性的一致。

  • DNS
  • GOSSIP         

    3-2.强一致性       

        强一致性指的是数据复制的过程是同步的。任何一次读都能读到某个数据的最近一次写的数据,系统中的所有进程,看到的操作顺序,都和全局时钟下的顺序一致。      

  • 同步
  • Paxos
  • Raft(multi paxos)
  • ZAB(multi paxos)         

四、强一致性模型(同步)衍生出的问题 

        问题:一个节点异常了,master会被阻塞,整个集群不可用,虽然保证了一致性,但不满足分区容错性了。 即CAP理论中不满足A,即不满足可用性。

        解决方式:为了解决同步模型中的可用性问题,所以引入了paxos理论。

五、强一致性模型(多数派) 

         分布式应用中,强一致性模型指的都是强一致性多数派模型,而多数派模型理论的基础就是paxos,ZAB和FAFT协议都是属于paxos模型的实现协议。        

        多数派模型的重点是:每次写都保证写入大于[N/2]+1个节点,每次读都保证大于[N/2]+1个节点中读。

        其主要理论和实现包括:

    六、多数派模型需要解决的问题

  • 决策模型:Proposer、Acceptor、Learner。(paxos中专门讲解)
  • 并发情况下,日志的有序性。

         如上图中,两个客户端分别对两个NODE发起请求,一个是+5,另外一个是+0,如果数据同步不能够形成顺序,则不同节点上,数据最终的结果会不一致。即第一第二结果为0,第三个节点为5。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值