首页 > 其他 > 详细

现实库存处理记录

时间:2015-05-16 11:55:28      阅读:283      评论:0      收藏:0      [点我收藏+]

  现今我们系统库存以sku为单位,每个sku都有对应库存。

  库存信息我们会记录在一个数据库表中,为了性能每次上线我们会将这个数据库表中的库存放入内存中。

  需要保证多个用户同时操作内存库存时的线程安全性,这边我们是通过调用tair的incr和desc命令保证库存增减是串形的。

   但是有一种可能:

    内存库存为1件,2个用户同时购买,第一个用户减完后库存为0,第二个用户为-1。这时如果不做处理就会产生超卖,我们这边会判断如果用户在操作库存时,发现减后的库存量是-1这时我们会加回去,并返回「库存不足」给用户。

  最坏的可能性如果是tair挂了,导致所有内存库存不可用,这时我们会用一个库存同步job为同步库存。

现实库存处理记录

原文:http://blog.csdn.net/zhaozhenzuo/article/details/45766893

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!