分布式数据一致性

分布式场景数据一致性是关键

分布式系统有三个指标,即CAP:

  • 一致性 Consistency
  • 可用性 Availability
  • 分区容错性 Partition tolerance

分区容错即不同节点间通信存在异常情况。
系统设计需考虑这种情况,无法避免,因此P必然成立,但C和A只能满足一个:
一致性 即节点A有变更,然后通知节点B变更,保持和A一致。
可用性 即不管节点A和B只要收到请求就必须返回可用的数据,数据不保证一致。

那么问题来了,为啥C和A不能同时满足?
因为通信失败

所以,系统设计只能选择一致性或可用性作为主要追求目标。

在数据敏感且重要的系统应用中优先考虑一致性,不能保证每个节点可用,即通过时间来保证节点数据一致后才能使用。

在数据不是很敏感,可支持不同节点数据不一致但提供可用性,数据一致性没法保证。

分布式协议算法 Poxos算法最为有效,已被广泛使用,典型应用Zookeeper,通过选举人推举Leader,follower,心跳保活等机制实现选主协调。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值