怎么保证促销商品不会超卖
来源:互联网 发布:cnc数控模拟软件 编辑:程序博客网 时间:2024/03/29 20:09
怎么保证促销商品不会超卖
这个问题是我们当时开发时遇到的一个难点,超卖的原因主要是下的订单的数目和我们要促销的商品的数目不一致导致的,每次总是订单的数比我们的促销商品的数目要多,当时我们的小组讨论了好久,给出了好几个方案来实现:
第一种方案是:①在每次下订单前我们判断促销商品的数量够不够,不够不允许下订单,更改库存量时加上一个条件,只更改商品库存大于0的商品的库存,当时我们使用ab进行压力测试,当并发超过500,访问量超过2000时,还是会出现超卖现象。所以被我们否定了。
第二种方案是:②使用mysql的事务加排他锁来解决,首先我们选择数据库的存储引擎为innoDB,使用的是排他锁实现的,刚开始的时候我们测试了下共享锁,发现还是会出现超卖的现象。有个问题是,当我们进行高并发测试时,对数据库的性能影响很大,导致数据库的压力很大,最终也被我们否定了。
第三种方案是:③使用文件锁实现。当用户抢到一件促销商品后先触发文件锁,防止其他用户进入,该用户抢到促销品后再解开文件锁,放其他用户进行操作。这样可以解决超卖的问题,但是会导致文件得I/O开销很大。
最后我们使用了redis的队列来实现。将要促销的商品数量以队列的方式存入redis中,每当用户抢到一件促销商品则从队列中删除一个数据,确保商品不会超卖。这个操作起来很方便,而且效率极高,最终我们采取这种方式来实现
阅读全文
0 0
- 怎么保证促销商品不会超卖
- 商品超卖问题
- js促销商品倒计时
- 促销体系之商品预售
- 二、商品促销-策略模式
- 商品促销倒计时效果实现
- 商品促销——策略模式
- 第二章 商品促销-策略模式(读书笔记)
- 第二章 商品促销---策略模式(读书笔记)
- 【C++】促销商品的折扣计算
- 策略模式——商品促销
- 策略模式一商场促销商品
- 部分淘宝店超低价卖商品是骗局
- 如何解决秒杀商品时,商品超卖的情况
- 抓取淘宝天猫的商品的促销价格
- 促销单审核后怎么修改
- 金管家:会员促销怎么做?
- 促销
- (HDU
- (CS231-2017)卷积神经网络视觉识别:线性分类(1)
- Ubuntu配置Django的简单步骤
- 赛车
- Git--如何解决failed to push some refs to git
- 怎么保证促销商品不会超卖
- 电商项目中使用Redis实现秒杀功能
- 你知道如何为iOS工程改名吗?
- CODE[VS] 1082 线段树练习 3 (区间修改、区间求和)
- hibernate的延迟加载和关联数据抓取方式
- Javascript Dom编程艺术读书笔记(六)
- javascript:void(0);用法及常见问题解析
- hdu 4292 Food(Dinic)
- python笔记002--安装python