为了账号安全,请及时绑定邮箱和手机立即绑定

分布式的库存扣除

现有5台单机redis

在扣除库存时,查看本地redis库存,然后需要查看远程redis库存,这样远程redis不是又被集中化了,当这个远程redis出现故障,整个系统同样也就挂了,这个问题不是太明白,还请老师给予解答,谢谢

正在回答

1 回答

本地redis是用来抗量,远程redis是为了防止库存超卖少卖。本地挂了不代表远程挂,远程redis可以做成集群,挂了哨兵会自动再起一个,远程切换过程中会有短暂的时间不提供服务,此时本地业务逻辑记得做异常兼容,如减库存操作减完后再还原回去。

1 回复 有任何疑惑可以回复我~
#1

wish5115

既然每次都要远程扣一次库存,本地减库存还有什么意义?不过本地的意义在读库存的时候有用,减库存的时候我咋觉得好像没多什么意义?不太明白,请老师指教!
2020-11-04 回复 有任何疑惑可以回复我~
#2

hen_nam 回复 wish5115

假设远程库存 1000,本地库存 150,前 150 个请求都必须查询远程库存,来确定库存是否充足,而从第 151 个请求开始就不需要查询远程库存,可以直接确定库存不足。
2020-11-27 回复 有任何疑惑可以回复我~
#3

wish5115 回复 hen_nam

明白了 谢谢
2020-12-11 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

分布式的库存扣除

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信