码迷,mamicode.com
首页 > 其他好文 > 详细

详解分布式BASE定理

时间:2021-06-07 20:24:34      阅读:0      评论:0      收藏:0      [点我收藏+]

标签:term   csdn   链接   load   仓库   event   重试   应用   first   

原文链接:详解分布式BASE定理_盛难晨-CSDN博客_base定理

 

什么是分布式BASE定理?

BASE是Basically Available(基本可用)、Soft state(软状态)和Eventually consistent(最终一致性)三个短语的缩写。
BASE理论是eBay架构师提出的。
BASE定理来源:是CAP中一致性和可用性的权衡结果,它来自大规模互联网分布式系统的总结,是基于CAP定理逐步演化而来的。
BASE定理的核心思想:即使无法做到强一致性,但是每个应用可以根据自身的业务特定,采用合适的方式来达到最终一致性。

技术图片

BASE定理的基本可用性

技术图片

损失相应时间:CAP可用性的服务相应时间可能是10ms,而BASE基本可用性的相应时间1-2s,即允许损失部分可用性的(时间上的损失)

技术图片

损失系统功能:BASE的基本可用性是允许某个服务出现故障时,采用服务降级等手段保证用户的体验性,即允许损失部分系统功能。

BASE定理的软状态

技术图片

我们在之前学习过硬状态,指的就是ACID的原子性。
硬状态只有在订单状态、积分发送成功、仓库出单成功,即三者同时成功的情况才算支付成功。

技术图片

什么是软状态?不要完全符合ACID的原子性
先把订单状态改成已支付成功,然后告诉用户已经成功了
剩下在异步发送mq消息通知积分服务和仓库服务
即使消费失败,MQ消息也会重新发送(重试)。

BASE定理的最终一致性

技术图片

什么是强一致性?指ACID的原子性,和硬状态一样。

最终一致性:和强一致性相反,数据不用即使一致。
实现最终一致性:一般是通异步来实现的,失败了就重试。在不影响用户体验的情况下,可以延时,即使失败了采用重试处理。



详解分布式BASE定理

标签:term   csdn   链接   load   仓库   event   重试   应用   first   

原文地址:https://www.cnblogs.com/acestart/p/14857441.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!