首页 新闻 搜索 专区 学院

关于负载均衡时数据并发的一点疑问?

0
[已解决问题] 解决于 2016-12-16 18:50

场景:下订单功能,商品总数10个。总人数1000人。在同一时间秒杀这10个商品。(这里只是用这个案例来说问题,并不是真实案例)

最开始只有一个站点。所以在下单功能的地方通过lock  进行加锁,即可保证10个商品只被10个用户秒杀到。

现在由于访问量增加,需要将站点部署到2台服务器上面。通过Nginx来进行负载均衡。这样就会带来一个问题。因为锁只对单个程序起作用,不能跨程序进行锁的操作。这样就可以会造成两个程序抢到同一个商品。

请问类似这样的情况如何防止抢到商品的总人数,大于商品的总数。

yzy的主页 yzy | 菜鸟二级 | 园豆:317
提问于:2016-12-16 16:17
< >
分享
最佳答案
0

分布式锁实现那么多,从db上模拟到redis到zookeeper,原生的,加装的都有。

奖励园豆:5
Daniel Cai | 专家六级 |园豆:10374 | 2016-12-16 16:26
其他回答(2)
0

用消息队列处理,并行转串行

刘阳|lyang|yangakw | 园豆:212 (菜鸟二级) | 2016-12-16 16:43
0

问题既然都发现 —— 你把锁置前不就完了

花飘水流兮 | 园豆:12353 (专家六级) | 2016-12-16 17:25
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册