分布式领域中的那些一致性

1.强一致性

某个节点在数据变更的情况下,必须保证其他节点访问此数据拿到的是变更后的数据。
例如:A,B,C三台数据库进行分布式集群,A做了修改,这时A会将数据同步至B和C,假设B或C有链接进行此数据的查询。
则,会出现两种结果。拿到原来的数据和拿到新数据。
而强一致性规定:必须拿到最新的数据,即整个数据变更过程,保证不允许外部访问拿到脏数据。
通常通过加锁等待的方式去实现强一致性。(服务器性能再好,也总会有个延时或者特殊情况,比如宕机)
分布式领域中无法满足强一致性,因为同步是靠网络传输,网络会有抖动。

2.弱一致性 

在分布式集群中,不去理会单个节点数据修改是否成功,即A就算同步不成功,B拿到的是脏数据也无所谓。
会出现数据不一致的情况。所以很少使用这种机制

 3.最终一致性

分布式集群中,A必须将数据同步至B和C中,就算中途B和C有链接访问到脏数据也无所谓,只要数据最终一致就行。
这也是分布式老生常谈的实现方案,就算节点宕机,也会有相应的重试和补偿机制维护其最终一致

欢迎大家和帝都的雁积极互动,头脑交流会比个人埋头苦学更有效!共勉!

公众号:帝都的雁

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值