案例 | 沃爾瑪 x 騰訊雲 Serverless 應用實踐,全力保障消費者購物體驗


深耕零售,沒有比中國更好的地方,也沒有比現在更好的時間。1996 年,國際零售巨頭沃爾瑪進入中國,在深圳開設了第一家山姆會員商店。25 年后的今天,山姆會員商店擁有 數百萬付費會員,成為 國內遙遙領先的會員制商店。

當位於深圳的山姆會員商店連續 10 余年成為沃爾瑪全球銷售第一的門店,沃爾瑪又一次亮出了優秀的業績。為什么能夠在極度競爭的中國零售市場保持強勁增長?2020 年全球零售行業調研報告作出了如下總結:在沃爾瑪,各種各樣的先進技術被廣泛應用以提高工作效率。沃爾瑪的管理者認為,先進的科技在零售市場將有助於沃爾瑪贏得競爭 。

01. 「顧客至上,服務第一」騰訊雲 Serverless 解決方案

顧客至上是零售行業的服務宗旨。但是消費者對購物體驗的要求越來越高,業務迭代速度越來越快。山姆會員商店要保持前瞻性,線上銷售渠道必須快速迭代創新,不斷為消費者創造新的購物體驗。

難點1 :應用發布頻率高
山姆會員商店業務迭代快、應用發布頻率高,基本保持在一周一迭代。
難點2:保障用戶最佳體驗
版本升級的基本要求是:對用戶無感知,在升級過程中應用的無損發布。
難點3: 資源消耗大
零售行業線上流量巨大,一個應用可能需要上千台服務器,采用藍綠部署時,如果在線上發布,需要再備份一千台服務器,對資源消耗造成極大的損失。

(山姆會員商店藍綠發布架構圖)

典型的開發流程從開發測試到集成測試,到預發測試,再到發布上線,每個研發階段都有對應的環境做支撐,而每個環境都會消耗資源和成本,來保持服務在線。傳統的版本灰度發布模式面臨環境多、資源消耗多、成本高等困境。

(環境多、資源消耗大)

騰訊雲山姆會員商店項目負責人李逸期在智慧零售深耕多年,從 0 到 1 搭建了山姆會員商店 APP 的技術架構。秉承沃爾瑪公司用科技助力市場的戰略,李逸期對以賦能業務為目標的技術創新,保持着極致化的追求。多種方案對比后,山姆會員商店選擇了騰訊雲雲函數 SCF ( Serverless Cloud Function ) 默認別名灰度發布策略。

雲函數 SCF 默認別名灰度發布

默認別名是配置雲函數的 $default(默認流量)別名,別名中固定有 2 個雲函數版本:一個為 $latest 版本,一個為最后一次函數發布的版本。部署時配置的 traffic 參數為 $latest 版本流量占比,默認另一部分流量切到當前雲函數最后一次發布的版本。
每次上線一個新功能,執行 sls deploy 會部署到 $latest 版本上。版本發布時先切部分流量在 $latest 版本上進行觀察,穩定后逐步將流量切到 $latest 版本。當流量切到 100% 時,固化當前版本,並將流量全部切到固化后的版本。

(雲函數默認別名灰度發布圖)

優勢 1 :風險控制保障用戶體驗
首先,控制變更的風險,一旦發現新版本有異常,隨時可以調整流量比例進行回滾;其次,客戶端和雲函數一起進行灰度,即使需要做一些破壞性變更,例如協議變更時,也不用擔心線上版本是否兼容新的協議。
優勢 2 :快速驗證適應高頻迭代
Serverless 模式下,環境隔離、可直接發布,提升高頻部署時的研發效率,適合做產品特性的快速驗證。
優勢 3 :彈性擴縮容節約成本
Serverless 在沒有訪問量時自動縮容,可以極大節約部署多環境的成本。

當遇到更加復雜的版本發布策略時,雲函數自定義別名可以提供更靈活的版本切換方式。自定義別名的配置方式相對於默認別名更復雜,適用於對灰度發布能力要求較高的業務場景。

(雲函數自定義別名灰度發布圖)

02.零售電商場景中 Serverless 應用

1. 電商大促等波峰波谷型業務

每年雙 11、618 等電商大促期間,零售行業線上渠道面臨歷史級別的流量挑戰,中大型電商平台的峰值調用量可達上千萬/分鍾,面臨高於日常 10-20 倍的流量壓力。日常運營活動中,例如精品秒殺、限時搶購等,電商平台也同樣面臨大流量高並發、波峰波谷用戶流量明顯分化的典型場景。
雲函數 SCF 提供彈性、可擴展的基礎設施和護航服務,幫助電商客戶把握業務增長的機遇,從容應對挑戰。

(電商彈性大促架構圖)

瞬時冷啟動

雲函數 SCF 底層采用自研的輕量級虛擬化技術,Micro Vm 啟動時間短至 90 毫秒,函數 冷啟動減低至 200 毫秒,並且支持上萬台計算節點同時擴容。

實時擴縮容

基於函數請求實時計算的模式,動態的擴縮函數實例,優化函數冷啟動的體驗問題,以及控制函數計算的資源成本 。

預置並發

在秒殺、搶購等場景中,瞬間需要海量的計算資源。雲函數預置並發,可支持並發實例按配置預先啟動,提前“預熱”函數,為業務高峰提前准備計算資源,消除冷啟動、降低運行環境初始化及業務代碼初始化引起的耗時。

2. 電商直播等 CPU 密集型業務

直播帶貨已成為線上零售平台的標配功能。電商直播中,需要專業、穩定的直播推流、轉碼、分發、播放等服務,滿足超低延遲、超高畫質、超大並發訪問量的要求。在直播結束后,通常需要對回播視頻進行處理,例如音視頻轉碼混流、回播視頻二次分發和存儲等。
相較於自建轉碼服務器,雲函數 SCF 無需考慮轉碼服務器閑置時間的利用效率、以及服務器運維等問題。

(雲函數電商直播方案)

平滑遷移快速上線

支持用戶自定義配置 FFmpeg 命令參數、以及部署自建 FFmpeg,轉碼方式靈活,也可以便捷地從物理機、雲主機或容器中移植到雲函數。

解決算力瓶頸

大規格實例最高支持 128GB/64C 進行 4K 高清視頻轉碼,結合資源彈性伸縮能力,有效保證轉碼效率。

按量計費成本優勢

視頻轉碼是高運算負荷的 CPU 密集型業務,需要對輸入的視頻流進行全解碼、視頻過濾/圖像處理、並對輸出格式進行全編碼。雲函數的1毫秒粒度按用量計費,擁有顯著的成本優勢。

3. 智能圖片處理等事件驅動型業務

在電商平台上,每天都會有大量商品圖片的查詢請求和更新請求。高峰情況下,每天有千萬級甚至億級的圖片處理需求。傳統方案需要搭建一個在線服務器並部署 Web 應用來進行圖片處理,程序按照一定規則定時觸發事件。
在傳統方案中,主要有三個困擾:

  1. 沒有請求時,空置率較高;
  2. 需要專門維護一套運行處理代碼;
  3. 需要考慮並發和定時器的執行方法,來保障圖片處理的及時性。
    而在 Serverless 架構中,雲函數 SCF 提供圖片裁剪、增加水印等多種處理能力,滿足電商業務的圖片處理訴求。同時針對圖片處理、存儲的高可用要求,可以支持對象存儲的跨區域高可用部署。

(雲函數圖像處理方案)

用戶僅需要在雲函數 SCF 上設置觸發器 + 函數,當用戶把圖片上傳到對象存儲中,將會觸發函數代碼進行圖片處理,並把圖片轉移到新的存儲桶中。整個過程,不需要搭建 Web 服務器,無需編寫觸發條件,也無需關注業務運維。

“中國市場是充滿競爭的,但機遇也是巨大的。我們將持續保持技術的驅動力和領先性,以更高的質量和更快的速度完成一次次的產品迭代,保障每一天的消費者體驗。”
—— Jason Wang ,沃爾瑪中國 技術總監

GitHub: github.com/serverless
官網: cloud.tencent.com/product/serverless-catalog

【騰訊雲原生】雲說新品、雲研新術、雲游新活、雲賞資訊,掃碼關注同名公眾號,及時獲取更多干貨!!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM