業務 電商 庫存

對庫存模塊從業務架構角度進行說明。

功能模塊劃分

  • 下單的庫存預佔
  • 出庫的庫存真實扣減
  • 庫存的回滾(取消訂單(來自商家,用戶))
  • 庫存的調整(訂單調整,商家的調整)
  • 是否可買(限時銷售,定時銷售)

其他業務

  • 銷量排名
  • 庫存預警

涉及庫存場景
1.用戶正常流程
用戶下單-商家分揀-(快遞員取件)-物流運輸-快遞員投遞
2.用戶購買商品缺貨情況一
用戶下單-商家缺貨-用戶協商-調整缺貨商品-商家分揀-(快遞員取件)-物流運輸-快遞員投遞
3.用戶取消訂單
用戶下單-用戶取消
4.風控
用戶下單-風控根據規則設置爲異常單-訂單鎖定-訂單取消或者訂單繼續生產
5.商家維護可售庫存量,即時或者定時生效

庫存計算公式

可用庫存=現貨庫存-預佔庫存-鎖定庫存

問題

1.如果安全的扣減庫存?
update… set x_stock=x_stock-buy_num where id = … and x_stock>=buy_num
2.秒殺情況?限流,排隊
緩存放個庫存計數器,超過的請求直接返回
請求排隊
3.秒殺同一個用戶不能搶購一個商品2次?
緩存記錄用戶和搶購商品關係,記錄是否搶購過,如果搶購過就返回(記錄存在時間爲活動時間)

發佈了39 篇原創文章 · 獲贊 6 · 訪問量 1萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章