预约成功!专门的客服稍后会与您联系

商城演示预约

商淘wstmart電商平臺限時秒殺的設計和實現

2020-06-17 17:24:42 757

Classification:连锁收银

wstmart電商平臺通過這種營銷手段,制造轟動效應,已達到商城推廣的目的。其實很多網上商城系統已經把秒殺活動常態化,它們會經常性地舉行秒殺活動。

在商淘wstmart電商平臺中,秒殺是一個經常需要用到的營銷工具,那麽wstmart網上商城系統的秒殺工具,是設計跟實現的呢?接下來就一起看看吧。

秒殺是一種常見的營銷手段,它指的是把少量的商品(一般是一件)以極低的價格,在特定的時間點開始銷售。這些商品一般在活動開始的第一秒內就被買走咯,所以稱之為秒殺。


wstmart电商平台通过这种营销手段,制造轰动效应,已达到商城推广的目的。其实很多网上商城系统已经把秒杀活动常态化,它们会经常性地举行秒杀活动。

秒殺對技術是一種極大的挑戰,因為秒殺活動帶來的並發訪問量是平時的數百倍甚至更多。所以必須設計專門的秒殺系統。

一、技術挑戰

對現有業務造成的沖擊:秒殺活動時間短、並發訪問量大,所以如果與wstmart電商平臺原有的應用部署在一起,就必然會對現有業務造成沖擊,甚至導致網上商城癱瘓。

高並發造成應用與數據庫極大的負載壓力。

突然增加的網絡與服務器帶寬。

直接下單的風險:下單頁面也是一個普通的URL 地址,所以如果直接得到這個 URL,那麽就可以不用等待直接下單。

二、應對策略

獨立部署:甚至使用獨立的域名,使其與wstmart電商平臺完全隔離。這樣即使秒殺系統崩潰了,也不會對網上商城系統造成任何影響。

靜態化需要秒殺的商品頁面:這樣秒殺商品的服務不需要部署Web 服務器和數據庫服務器。

租借網絡帶寬:秒殺所新增的網絡帶寬,可以向運營商租借。還需要與把秒殺頁面緩存在CDN 中,所以也需要向 CDN 服務商臨時租借帶寬。

動態生成隨機下單頁面的URL:在下單頁面的 URL 中加入服務端生成的隨機數作為參數,這個參數只能在秒殺活動開始時才能獲取。這樣即使是網上購物系統開發者也無法在秒殺前得到正確的下單URL 地址。

三、架構設計

因為參與秒殺活動的用戶關心的是如何才能快速刷新商品頁面,讓自己在秒殺開始時能夠搶先進入下單頁面,所以秒殺活動頁面設計應該盡可能簡單。

下單的頁面也應該盡可能地簡單:購買數量只能是一個且不可修改,送貨地址和付款方式都使用用戶的默認設置,如果沒有默認值也允許為空,等訂單提交後再補充。只有第一個提交的訂單能夠發送給電商平臺系統的訂單子系統,其余用戶提交後只能看到秒殺結束頁面。

3.1、及時點亮秒殺頁面的購買按鈕

秒殺頁面的購買按鈕只有在秒殺活動開始時才能點亮,在此之前都是灰色的,不可操作。這個頁面被設計為靜態頁面,被緩存在CDN 與反向代理服務器中,甚至在用戶的瀏覽器上。所以在秒殺活動未開始時,用戶的刷新頁面請求是不會到達應用服務器的哦。

我們在秒殺商品的靜態頁面中加入一個JavaScript 文件引用,它包含秒殺是否已開始的標誌與下單頁面 URL 的隨機參數。秒殺開始時,系統會生成一個新的 JavaScript 文件,它會被瀏覽器加載(刷新頁面或定時腳本),這樣就能點亮頁面中的購買按鈕。這個 JavaScript 文件使用隨機版本號,確保它不被瀏覽器、CDN 和反向代理服務器緩存。

3.2、只允許第一個提交的訂單發送到訂單子系統

通過控制進入下單頁面的入口,只讓少數用戶能夠進入下單頁面,其他的用戶會直接進入秒殺已結束頁面。下面假設下單服務器集群中有10 臺服務器,而每臺服務器只能接受最多 10 個下單請求。

3.3、整體架構

秒殺對架構是極大的考驗。所以為了保證系統安全,我們在遵循秒殺活動規則的基礎上,保持適度的公平與公正即可。如果系統出現故障,應該顯示秒殺活動已結束的頁面,而不是出錯頁面,這樣可以避免不必要的糾紛。

未来企业
都将是数字化的企业

商淘云微信客服
扫码添加好友
商淘云官方公众号
扫码关注我们