在看公司的電商專案中,關於建立訂單的流程,涉及到載入sku資訊,而載入sku資訊涉及到了sku庫存,資料庫也有sku的庫存表單獨存在,其中的字段有可用庫存、鎖定庫存、是否追蹤庫存、庫存政策(是否允許超賣)等。所以去了解一下關於電商專案的庫存概念以及業務場景本文不涉及**,純知識分享
可銷售庫存數(sellable inventory)是即**前台顯示的庫存數值。當「可銷售庫存》0」時,這一商品可供購買,前台**則會顯示產品可銷售;而一旦「可銷售庫存<0」時,前台**則會顯示商品缺貨。一般所說的缺貨並不等於庫房中沒有庫存了,而是指沒有可供銷售庫存情況。
場景:顧客選購完商品,確認訂單時,前台**系統會首先向後台訂單系統發出請求,檢查訂單產品數量與當前可銷售庫存數量。若可銷售庫存數量》訂單產品數量,則通知前台**可進行交易並產生,一張新的預購訂單後,該客戶預購的商品數量則轉化成庫存預分配資料以暫時凍結此部分為庫存,以便用於後續的發貨,系統中可用庫存數量減少。否則會通知前台庫存不足,提醒客戶。當生成訂單時,可用庫存數量不斷減少,訂單占用庫存(order occupied inventory)數量增多,變化的數量即訂單中的產品數量。
設立訂單占用庫存的原因在於:訂單的生成和庫房的發貨在時間上是非同步的。這樣做的優點在於:保證已經生成訂單的庫存,這部分客戶可以順利收貨;而且客戶在下訂單時,能夠保證有產品發貨。若不設立訂單占用庫存,則會產生客戶下訂單後,出現庫存無貨可發的風險。
而處理訂單時,針對的只是已經被訂單所占用的庫存,與前台的銷售無關。訂單出庫後,系統中扣減的也只是訂單所占用庫存
場景:在銷售中,經常會使用的一種**方式是降價,這一方式的效果會非常好,成功的降價**可以在很短時間內將商品一售而空,可銷售庫存直接轉化為訂單占用庫存。為達到以上的目的,會採用鎖定庫存(locked inventory)的方式。庫存被鎖定後,無法直接銷售。**進行一段時間後,可用庫存為0,無法繼續銷售,必須在解除鎖定後才能轉化為可銷售庫存,繼續進行銷售。但是有一些情況下,銷售方並不希望這麼快就將所有的庫存都售出。有的時候是因為所有庫存全部作降價**的成本很高,有的時候是防止競爭對手的惡意採購,更多的情況下,則是希望將這一產品的降價作為引子,帶動**的流量和整體銷售,這就需要將**分批次進行。
背景:以上所說的,都是指在實物在庫房中的庫存。但庫房的總容積量是一定的,不可能無限制的擴充套件。而依據長尾理論,電子商務的最大優勢則是幾乎無限的商品展示和銷售能力。如何將有限的庫房處理能力和無限的可銷售商品聯絡趕來呢?方法早就有了,虛庫存(virtual inventory)。有一些產品,雖然庫房中並沒有,或者並沒有很多,但是**渠道非常通暢,可以在很短的時間內送到庫房中,變為庫存;另外一些產品,銷售量少,庫存的管理難度大,只有當產生訂單後,才向**商採購。這部分不在實際的庫存中,但是可以很快採購到的貨品就叫做虛庫存。
虛庫存的存在,是為了使前台**的可銷售數量大於實際可銷售數量
很多b2c企業有著超過乙個以上的庫房。多個庫房的設定,主要是因為規模發展到一定程度後,庫存量很大,很難在乙個單獨的庫房中儲存,另外,也經常會在客戶聚集地附近設立庫房,以滿足當地客戶的需求。各個庫房之間,必然存在著庫存的分派和調撥。當產生調撥計畫後,調出地庫房的某一部分庫存就會被占用,這部分庫存被稱為調撥占用庫存(out-transit inventory)。調撥占用庫存和訂單占用庫存的性質相似
庫存的調撥,必然會存在一段時間,庫存既不存在於調撥出庫房,也不存在於調撥入庫房,這一部分庫存就像漂在空中一樣,稱為調撥中庫存(in-transit inventory)
前面舉的例子當中,產品由於破損無法銷售,在系統中也必須有相應的狀態。實際操作中,無法作正常銷售的原因很多,例如包裝破損、效能故障、型號標錯等等。
s=i+v+a-o-u-l-t
關於電商庫存扣減問題
b2c 庫存扣減方式 1 直接扣減實際庫存 直接採用實際庫存,每次客戶下單扣減實際庫存,容易導致庫存占用,對銷售和運營都不合理。a 如果購買使用者未付款,實際庫存導致庫存被扣減,讓有意願購買的使用者無從下單,對銷售業務有很大影響 b 未付款訂單給予30 40 鐘付款等待時間,未付款自動釋放虛擬銷售庫...
電商的庫存修改
悲觀鎖和樂觀鎖之樂觀鎖 修改記憶體的sql update eb sku t set t.stock inventory t.stock inventory where t.sku id 1020 and t.stock 模擬線程併發問題 加上and 可以減少資料並非的問題 判斷庫存是否足夠 例項1u...
電商專案的總結(3) nginx
1.nginx nginx是在分布式系統中實現高可用,負載均衡以及反向 的角色。使用nginx能夠訪問資源。1 高可用 為了實現高可用,可以去搭建nginx集群,最少兩台,一台nginx作為主伺服器,一台作為備份機,在這兩台伺服器都都有高可用的監控程式,主伺服器向備份機傳送i am alive的資訊...