高并发场景秒杀

1.超卖

分布式锁:

入门级别:

问题:容易死锁;系统宕机,用trycatchfinally都解决不了。

加个超时expire?

还是有问题:expire+setnx

仍有问题:线程1可能把线程2的锁删了

问题:正准备判断是不是自己锁的时候,卡顿了一下

方法:最后两行原子性执行

源码:lua脚本

zokeeper:

过半的分布式锁同步成功了,客户端才会进行。

数据一致性比redis好。

redlock:

缓存数据库双写不一致问题

解决方法:

问题:线程2应该是正确的值,却被线程三3修改了。

解决方法:

延迟双删:

问题:一定程度上解决这个问题,也会降低吞吐量。

内存队列:

对同一个商品的增删该茶放到队列串行化?

问题:要开很多内存队列,进行路由。很复杂。

解决方法

分布式锁:

 

 

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值