CAP与数据一致性

CAP定理

一个分布式系统最多只能同时满足一致性(Consistency)、可用性(Availability)和分区容错性(Partition Tolerance)这三项中的两项。

  • Consistency(数据一致性):分布式场景下,只要存在数据冗余/副本,就需要考虑数据一致性问题;
  • Availability(系统可用性):系统/服务的可用性,一般通过不可用时间来衡量,如下所示;
  • Partition Tolerance(分区容错性):网络出现局部故障时(如丢包、乱序、抖动、甚至是网络分区节点 crash ),系统能否仍然提供满足一致性和可用性的服务;
    在这里插入图片描述
CP or AP

  在实际环境中,网络问题往往是最不可控的,只能通过提升基础设施的稳定性或者搭建私有环境等手段尽量避免,因此往往是根据实际场景在CA两者之间进行权衡。BASE理论实际就是AP,牺牲强一致性,保证最终一致性。

数据一致性

  数据的一致性可以分为弱一致性和强一致性,实际中使用的弱一致性都是最终一致性(数据副本间允许短时间的不一致),强一致性的实现目前主流的是Paxos、ZAB和Raft。

最终一致性

  最终一致性强调的是系统中所有的数据副本,在经过一段时间的同步后,最终能够达到一个一致的状态。因此,最终一致性的本质是需要系统保证最终数据能够达到一致,而不需要实时保证系统数据的强一致性。

参考:

  1. 分布式系统的CAP理论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值