天天看點

當新零售遇上 Serverless傳統企業為什麼更需要關注 Serverless從上雲到雲原生

某零售商超行業的龍頭企業,其主要業務涵蓋購物中心、大賣場、綜合超市、标準超市、精品超市、便利店及無人值守智慧商店等零售業态,涉及全管道零售、倉儲物流、餐飲、消費服務、資料服務、金融業務、跨境貿易等領域。為了持續支援業務高速且穩定地發展,其在快速上雲後,将核心業務改造為全 Serverless 架構的中台模式,采用函數計算 + API 網關 + 表格存儲 OTS 作為計算網絡存儲核心,彈性支撐日常和大促峰谷所需資源,輕松支撐 618/ 雙 11/ 雙 12 大促。

傳統企業為什麼更需要關注 Serverless

為了降低技術研發成本、提升運維效率,越來越多的企業選擇使用 Serverless 作為基礎研發底座,大力發展業務。在 CNCF Serverless 研究報告中顯示,大量的國内開發人員正在将傳統架構往 Serverless 上做遷移。Serverless 的出現給傳統企業數字化轉型帶了更多機遇。

現如今,大量尖端技術人才更偏向在網際網路公司就業,傳統企業又面對着大量技術更新和重構技術架構的剛需,人才缺口和技術更新之間産生了對雲原生技術的需求。Serverless 的出現抹平了研發人員在預算、運維經驗上的不足。在幫助企業對抗業務洪峰的情況下,研發人員能輕易掌控處理,不僅極大地降低了研發技術門檻,而且大規模提升了研發效率。對于開發者而言,線上預警、流量觀測等工具一應俱全,關鍵是免去了運維負擔,切實為廣大開發者提供了普惠技術紅利。對傳統企業而言,Serverless 縮短了網際網路公司與傳統企業之間技術競争力的距離。

從上雲到雲原生

2016 年以後,随着國内公共雲的迅速發展,全面上雲勢不可擋。某知名大型商場在 2018~2019 年期間,把自建機房中的各個系統子產品逐漸遷移到了公有雲,整體架構沒有太大改變,是以遷移工作比較順利。

系統全面遷移上雲後一些改進和不足

不再需要關心網絡、作業系統的硬體細節

比如阿裡雲的 ECS 會提前做排程和預警,把使用者資料轉移并做多份資料的備災,防止磁盤壞掉的情況發生。

更新快捷簡單

比如使用者使用的是 4 核的機器,當發現業務增長迅速需要做硬體更新時,就隻需要做一個鏡像。比如在夜間做一個磁盤快照,重新申請一台新機器,然後把快照恢複上去,就可以完成一鍵遷移。對使用者來說這是非常快捷的方式,對開發者來說也是較好的體驗。

機器擴容時間大幅縮短

上面提到的是單機擴容,比如 4 核升到 8 核、16G 升到 32G 的記憶體。除此之外還有橫向的擴容,例如使用者交易系統的 API 接口,随着業務的發展需要由原來的 2 台機器擴到 8 台機器,這種情況下使用者隻需去申請機器,然後将鏡像擴充到不同的機器上即可。

資源預算困難

無法預估業務遇到大促活動時所能達到的體量,是以無法準确計算出所需硬體的數量。

水準擴充

水準擴充對研發有較高的要求。比如資料是否要做到無狀态,無狀态的話水準擴充會比較容易,而如果是有狀态,資料可能就需要做緩存,這就會涉及到資料庫相關的問題,例如資料過期、一緻性等。如果對這些了解不夠透徹,做水準擴充就會比較困難。

水位監控

許多開發者在水位監控上處理得并不完善,如果将各個業務系統混在一台機器上,當遇到機器水位較高,想要快速排查問題并及時進行流控、拆分、臨時修複等就顯得尤為困難。

财務預算困難

與資源預算困難類似。

硬體更新成本高

要做到使用者無感無損更新,可能會涉及到連接配接上的處理與資料庫一緻性的問題。如果多個子產品需要同時更新,還要注意資料結構的相容問題。

資料庫單點故障

許多廠家将資料全部放在一個資料庫中,如果處理不妥當可能會造成單點故障。這就要做資料拆分,粗拆的話,需要注意事務和鎖相關的問題,效率會大打折扣;細拆的話,做查詢和排序時就會比較困難,給業務實作造成一定麻煩。

業務挑戰

在一次年中大促時,由于線上業務使用者通路不可控,資料量過大,MySQL 單機通路被打爆,導緻了存儲資料庫出現問題,影響到了多個系統,造成了一定的損失。是以在後續服務化改造過程中,資料庫選型由 MySQL 更改為表格存儲 OTS,表格存儲最大的優點是使用者不需要關心通路量和機器數的比例關系。隻要通路量擴大,背景會自動擴容增擴機器,滿足高并發的資料讀取;在資料并發請求降低處于低峰期時,背景就會将機器回收,使用者不再需要關心機器的數量及如何調動。

Serverless 改造

當新零售遇上 Serverless傳統企業為什麼更需要關注 Serverless從上雲到雲原生

針對使用者流量不可控問題,客戶引入了阿裡雲的産品 “API 網關” ,API 網關可以針對不同管道商做管控釋出及流量控制。比如發現微信管道流量有異常,就可以借助 API 網關進行限流。

另外計算也是一個非常重要的問題,客戶經過探索發現阿裡雲函數計算 FC 非常契合其業務場景。比如定時搶購、優惠券投放等活動造成巨大的 burst 沖擊,當發現計算資源不夠的時候再去買機器肯定是來不及的,而函數計算及時擴容的功能就很好地解決了這個問題。另外其資料觀測和異常報警功能,也吸引到了客戶。

今年 3 月,權威咨詢機構 Forrester 釋出 2021 年第一季度 FaaS 平台評估報告,阿裡雲函數計算憑借在産品能力、安全性、戰略願景和市場規模等方面的優勢脫穎而出,産品能力位列全球第一,這也是首次有中國雲廠商進入 FaaS 上司者象限。

當新零售遇上 Serverless傳統企業為什麼更需要關注 Serverless從上雲到雲原生

在緊張的測試驗證後,技術人員發現函數計算的優異表現很契合自身業務高度彈性的會員查詢系統。從 2019 年 7 月開始,客戶的技術團隊在不到 3 個月的時間裡,将原有的會員資料全部副本鏡像遷移到表格存儲,并将所有管道商的 API 全面遷移到阿裡雲 API 網關做分發,會員查詢業務的計算業務也全面遷移到阿裡雲函數計算。

2019 年的雙 11,函數計算作為計算子產品,表格存儲作為存儲子產品,順利地幫助客戶渡過大促,扛住高峰流量的同時確定了應對業務的彈性。而未使用 Serverless 的業務因為預估不足,出現了一些異常。正是因為函數計算在雙 11 中的表現讓客戶技術人很振奮。在順利度過大促活動後,客戶就在所有業務中全面使用函數計算及表格存儲!

當新零售遇上 Serverless傳統企業為什麼更需要關注 Serverless從上雲到雲原生

新零售商超整體架構圖

  • 全 Serverless 架構:函數計算 + API 網關 + 表格存儲;
  • 彈性高可用:毫秒級彈性擴容、充足的資源池水位、跨可用區高可用;
  • 靈活開發免運維:函數式極簡程式設計可專注于業務創新,無采購和部署成本、提供監控報警等完備的可觀測能力。

2019 年下半年,阿裡雲函數計算宣布推出 2.0,支援預留模式,全面解決冷啟動延遲大的問題;推出單執行個體多請求問題,較少執行個體支援重 IO 高并發類型請求調用;支援自定義運作時,支援一鍵遷移傳統 Web 架構伺服器。2.0 的出現讓函數計算在業務和規模上實作了巨大更新。

在經曆了過去的線下場景考驗後,客戶将各管道商的業務及旗下的移動 App,以及線上交易、定時搶優惠券、秒殺業務也全部從 ECS 遷移到了函數計算 2.0,在開啟預留模式調整好單執行個體多并發的模式後,順利地扛過了是平時數十倍的洪峰流量請求。

當新零售遇上 Serverless傳統企業為什麼更需要關注 Serverless從上雲到雲原生
當新零售遇上 Serverless傳統企業為什麼更需要關注 Serverless從上雲到雲原生

比較上述的“時間-流量圖”及“時間-延遲”兩圖可以看到,急劇上升的突發流量對使用者造成的延遲變化影響非常小,從實際使用者回報來看确實也證明了使用者體驗非常順滑。

所有的資料和業務上雲,減輕的不隻是研發人員的心理壓力,更為研發人員大量減負,進而讓大家可以做更聚焦在業務邏輯上的事情。函數計算可以讓研發人員不用管理伺服器這些基礎設施,隻要編寫代碼上傳,系統就會準備好計算資源,還提供日志查詢、性能監控、報警等功能。如果是按照以前的模式,超市搞 雙 11 大促,相關的技術團隊都睡不着覺,隻靠擴充機器支撐大體量的流量和業務,誰心裡都沒譜。現在擴容的問題交給阿裡雲,水位遠遠高于客戶原有的儲備能力的極限。

今年,Serverless 迎來重大更新。函數計算重磅釋出容器鏡像加速技術,容器啟動延時縮短 50%-80%,将原本屬于開發者的鏡像優化負擔轉由函數計算承擔,進一步幫助開發者提高生産效率,專注業務創新。該技術源于阿裡集團超大規模和場景高度複雜的容器環境,對鏡像存儲、加速技術有深厚的積累,并出色地承擔了 3 年雙十一、雙十二、春節等大促秒殺場景的嚴苛的挑戰。

同時,Serverless 應用引擎(SAE)重磅釋出 Java 應用啟動加速功能,首度将 Alibaba Dragonwell (阿裡雲開源的 Open JDK 長期支援版本) 的冷啟動加速技術、多線程運作加速技術和 SAE 自身的原地更新政策、鏡像預熱政策相結合,實作了 Java 應用的端到端啟動速度提升 45%,最快僅需 15s,多線程性能提升 30%。

當新零售遇上 Serverless傳統企業為什麼更需要關注 Serverless從上雲到雲原生

由于業務場景、使用者習慣迅速變化,許多行業數字化業務出現急速增長,加快數字化業務發展成為傳統企業的必然選擇。雲原生是企業數字化最短路徑,越來越多的傳統企業正在擁抱雲原生,借助更加快速、靈活的開發和傳遞模式,滿足市場快速變化的需求,進而加速業務創新。傳統零售企業借助 Serverless 保證了一次次大促的成功,正是這一趨勢的最好證明。