本文共 675 字,大约阅读时间需要 2 分钟。
BASE是Basically Available(基本可用)
、Soft state(软状态)
和Eventually consistent(最终一致性)
三个短语的缩写。
损失相应时间:CAP可用性的服务相应时间可能是10ms,而BASE基本可用性的相应时间1-2s,即允许损失部分可用性的(时间上的损失)
损失系统功能:BASE的基本可用性是允许某个服务出现故障时,采用服务降级等手段保证用户的体验性,即允许损失部分系统功能。
我们在之前学习过硬状态,指的就是ACID的原子性。
比如你要购买东西,下订单,付款,减库存,这三部都成功了才会给用户返回下单成功什么是软状态?不要完全符合ACID的原子性,即允许系统在不同节点间副本同步的时候存在延时,
先把订单状态改成已支付成功,然后告诉用户已经成功了 剩下在异步发送mq消息通知库存服务减库存 即使消费失败,MQ消息也会重新发送(重试)。它和强一致性不一样,强一致性读操作要么处于阻塞状态,要么读到的是最新的数据
最终一致性通常是异步完成的,读到的数据刚开始可能是旧数据,但是过一段时间后读到的就是最新的数据转载地址:http://uqhzi.baihongyu.com/