函數計算助力高德地圖平穩支撐億級流量高峯

簡介: 2020 年的「十一出行節」期間,高德地圖創造了記錄 ——截止 2020 年 10 月 1 日 13 時 27 分 27 秒,高德地圖當日活躍用戶突破 1 億,比 2019 年 10 月 1 日提早 3 時 41 分達成此記錄。 期間,Serverless 做爲其中一個核心技術場景,平穩扛住了流量高峯期的考驗。值得一提的是,由 Serverless 支撐的業務在流量高峯期的表現十分優秀,每分鐘函數調用量接近兩百萬次。這再次驗證了 Serverless 基礎技術的價值,進一步拓展了技術場景。前端

客戶介紹

2020 年的「十一出行節」期間,高德地圖創造了記錄 ——截止 2020 年 10 月 1 日 13 時 27 分 27 秒,高德地圖當日活躍用戶突破 1 億,比 2019 年 10 月 1 日提早 3 時 41 分達成此記錄。less

期間,Serverless 做爲其中一個核心技術場景,平穩扛住了流量高峯期的考驗。值得一提的是,由 Serverless 支撐的業務在流量高峯期的表現十分優秀,每分鐘函數調用量接近兩百萬次。這再次驗證了 Serverless 基礎技術的價值,進一步拓展了技術場景。運維

客戶痛點

自主出行是高德地圖的核心業務,涉及到用戶出行相關的功能訴求,承載了高德地圖 APP 內最大的用戶流量。自主出行核心業務中應用 Node FaaS 的部分場景包括主圖場景頁、路線規劃頁和導航結束頁等。函數

隨着功能的進一步拓展,高德地圖從導航工具升級爲出行服務平臺和生活信息服務入口,進一步拓展了出行相關的生活信息服務場景,帶給用戶更全面的用戶體驗。例如新功能場景推薦卡片,旨在根據用戶出行意圖推薦信息,提高用戶出行體驗。此功能需具有快速迭代,樣式調整高靈活性的能力。所以,將卡片樣式模版存放於雲端,經過服務下發的形式渲染至客戶端無疑爲最優選擇,能夠知足業務快速靈活迭代的目的。工具

解決方案

通過方案評估判斷,此場景類型屬於無狀態服務,基於阿里雲 Serverless 成熟的生態,高德最終選擇接入 Node FaaS(阿里雲函數計算)服務能力,出行前端搭建了場景推薦卡片服務。卡片的 UI 模版獲取、數據請求聚合&邏輯處理、拼接生成 Schema 的能力均在 FaaS 層獲得實現,客戶端根據服務下發的 Schema 直接渲染展現,達到更加輕便靈活的目標。在「十一出行節」峯值場景中,Serverless 總體服務成功率均大於99.99% ,總計 100W+ 次觸發/分鐘,QPS 2W+,各場景的服務平均響應時間均在 60ms 如下,服務穩定性超出預期。學習

使用效果

從對以上業務場景的支撐中,咱們能夠看出 Serverless 的表現很是優秀。固然你也會問,傳統的應用也能帶來一樣的體驗,那麼 Serverless 的差別化價值又是什麼呢?測試

  1. 簡單提效

傳統 BFF(Back-end For Front-end)層應用會隨着時間推移,以及業務需求的增長, 其 BFF 層逐漸變 「富」, 冗餘的代碼逐漸變多,最後變成開發者的噩夢——「牽一髮而動全身」。隨着人員迭代變化,模塊的開發者也會變化,BFF 層就會慢慢變成一個無人知曉,無人敢動的模塊。阿里雲

當 BFF 層轉換成 SFF (Serverless For Front-end) 層以後,會有什麼變化?SFF 的職責會變的單1、零運維、成本更低,這些是 Serverless 自己自帶的能力,而這些能力能夠幫助前端進一步釋放生產潛能。開發者再也不須要一個富 BFF 層,而只需一個接口或一個 SFF 就能夠實現功能,自然解決了「牽一髮而動全身」的問題。若是接口停服或者沒有流量,那麼所用的實例會自動縮零,也就很容易分辨出是哪個接口函數,後期就能夠刪掉此接口的函數,有效提高資源利用率。spa

高德在 Serverless 應用上很是先進,實現了 FaaS 層與研發體系的徹底對接,所以,應用從開發、測試、灰度、上線的全生命週期,到具有流控、彈性、容災等標準化能力,所用的時間較之前縮短了 40%,大大提升了人效。
高德1.png日誌

  1. 彈性以及成本

經過流量趨勢數據,咱們能夠觀察到地圖場景流量特色——高峯與低峯的落差十分明顯。按照傳統應用的資源準備,咱們須要根據最高峯的流量進行資源準備,因此到了流量低峯期,多準備的機器會有不少冗餘,這就形成了成本的浪費。

針對以上狀況,高德使用了阿里雲函數計算,能夠根據流量變化自動擴縮容。然而,提高擴縮容速度的複雜性較大,一直是大企業的專屬,但函數計算能夠經過毫秒級別的啓動優點,將快上快下的擴縮容能力普及給用戶,輕鬆幫助用戶實現了計算資源的彈性利用,而且大大下降了成本。
高德2.png

  1. 可觀測性

可觀測性是應用上線診斷平臺的必備屬性,要讓用戶觀察到 RT 變化、資源的使用率、系統應用的全鏈路調用,從而快速診斷出系統應用的瓶頸問題。阿里雲函數計算率先與日誌服務、雲監控、tracing 平臺以及函數工做流編排作了完美的融合,用戶只須要配置一次,就能夠完完整整的享受到以上這些功能,大大下降了用戶的學習成本,實現了對應用程序的快速診斷。
高德3.png

Serverless 規模化落地的序幕已經拉開, 更多場景正在各行各業中解鎖。Serverless 在高德的規模化落地,對於業務方來而言,業務迭代更快更靈活了,爲業務創新創造了前提條件;對於前端開發者而言,進一步激活了開發者的生產潛能,提高了極大的能力自信。高德出行業務從 2020 年初的能力試點到「十一出行節」的自主出行核心場景,期間接入了阿里雲函數計算,積累了很是寶貴的雲原生落地經驗,爲將來業務總體上雲打下了良好基礎。
原文連接本文爲阿里雲原創內容,未經容許不得轉載。

相關文章
相關標籤/搜索