MSE Serverless 正式商用,構建低成本高彈性的微服務架構

微服務架構充分提升了研發效率,解決了複雜業務系統的快速迭代問題。但隨着業務及技術演進,各種微服務組件也愈發複雜。如何實現更敏捷的開發,降低微服務開發運維成本,做到全鏈路的彈性,保障整個系統的穩定性,依然存在諸多挑戰。

比如多個開發團隊在缺乏統一規範或協同的情況下,會出現微服務組件、SDK 版本不一致的情況,但考慮到版本兼容性、升級影響範圍等因素,不少用戶不敢升級而埋下隱患。在做容量規劃的時候,用戶很難根據業務量評估合適的資源需求,採用大規格實例則成本過高,用小規格遇到突發流量又會影響穩定性。如果業務是由 ISV 開發,項目交付驗收完成之後,一些基礎組件的運維責任不明晰,如果缺少專業的巡檢和監控告警機制,極易引發線上故障。

微服務 Serverless 趨勢

作爲微服務架構演進的一大趨勢,Serverless 技術可以最大化技術紅利和資源利用率,解決上述問題。它讓開發者專注業務實現,而不必關心底層的服務器在哪,資源是否充足,什麼時候該擴縮容或升級。

在研發協作和迭代效率方面,微服務本身是高內聚,可複用的,加上 Serverless 基礎設施,可以升級成組裝式研發。同時用戶可以利用微服務治理的全鏈路流量控制能力,快速搭建邏輯隔離的日常環境,在節約資源成本的同時,將開發測試環境的構建時間從數天降低到分鐘級別,極大解放開發者的生產力。對於網關、註冊配置中心、MQ、數據庫、Redis 緩存這些基礎組件,如果通過資源冗餘來保障其穩定性,顯然不夠經濟。

通過 Serverless 雲產品就可以快速實現全鏈路的資源彈性,並享受自動升級等免運維的能力。這些基礎組件都通過 Backend as a Service 的方式提供,開發者不需要陷入複雜的配置集成工作中,而是聚焦在開發任務。對於業務方來說,即使 ISV 交付完項目撤出以後,也不用擔心基礎組件的運維、技術兜底和穩定性保障。

MSE Serverless 功能

正是順應這種技術趨勢,阿里雲 MSE 在微服務業界率先推出了 Serverless 版。它有三大功能亮點,第一是自適應彈性,雲原生網關和註冊配置中心可以根據業務量自動地進行擴縮容,免去用戶複雜的容量規劃工作。對於註冊配置中心來說,其資源消耗和多個因素相關,比如服務提供者數量、客戶端連接數、TPS 等。但有些指標很難進行觀測和提前規劃。網關作爲關鍵的流量入口,雖然可以預測日常業務流量,但很難判斷計劃外流量。通過雲服務的自適應彈性,可以保證整個技術架構的穩定性及成本的可控。

第二點是開箱即用免運維,大大減輕用戶的運維負擔。MSE 將註冊配置中心、雲原生網關以及服務治理的關鍵事件,比如實例變更、節點啓停、應用上下線、限流熔斷等彙總成統一視圖,便於問題的分析和排查。MSE Serverless 實例會在用戶自定義的運維時間段,執行前置檢查和自動升級。既保障組件處於最新的穩定版本,又能解除用戶對於兼容性或者業務流量影響的擔憂。另外很多用戶缺乏配置告警規則的意識或經驗,MSE Serverless 實例也支持默認告警配置,當一些嚴重事件發生的時候,儘早通知到用戶,及時介入。

最後也是最重要的一點,MSE Serverless 的計費方式跟業務量關聯起來,門檻更低。普通實例按照固定規格收費,對於創業初期的小規模業務,或者業務低峯時段,實際會有資源的浪費。MSE 註冊配置中心 Serverless 按照客戶端連接數計費,雲原生網關 Serverless 按請求量計費,對於測試環境、潮汐式業務、中小規模業務,都會節省大量成本。

構建高彈性的微服務架構

用戶如果要自行構建一個全棧、高彈性的微服務架構,需要去權衡各個組件擴縮容的難易度,伸縮速度以及業務負載變化速率這些因素。如果基於 MSE Serverless 版,再結合阿里雲其他雲產品能力,可以輕鬆實現上述目標。如下圖所示,用戶業務流量經由 NLB 進入到雲原生網關 Serverless 實例,並路由到部署在 ACK 或 SAE 上的應用,整條鏈路上的產品都具備自適應彈性能力。

當應用副本數隨着業務流量增大,其訪問註冊配置中心的連接數及 TPS 也會隨之升高,Nacos、ZooKeeper Serverless 實例也會進行相應的彈性伸縮。對於服務治理來說,它本身就是應用級的按需接入,當SAE 或者 ACK 上的某個應用開啓服務治理以後,擴容出的應用副本也自動享受到服務治理能力。現在阿里雲已經有二十多款 Serverless 產品,並且會繼續推進核心產品全面的 Serverless 化。通過 Serverless 雲服務,用戶可構建整體高彈性、低成本的微服務架構。

下面通過一個測試用例可以展示雲原生網關 Serverless 實例如何與 ACK 容器集羣配合,利用日誌記錄中的 QPS 指標和容器 HPA 機制,實現根據請求量進行整體擴容。

針對部署在容器集羣的應用負載,我們創建一個 HPA 資源,設定最小和最大副本數,定義 QPS 爲指標,每個副本的平均 QPS 達到 50 則觸發擴容。

運行壓測工具 10 分鐘,發送到網關的請求從 400 TPS 逐級上升到 4000+ TPS。可以看到所有壓測請求 100% 成功,而且平均 RT 保持在 9~10 毫秒的水平。實際上,網關服務和容器集羣中的應用副本都進行了自動擴容,整個過程對用戶完全透明,業務無感知。

 

MSE Serverless 適用場景

MSE Serverless 雖說有諸多優勢,但也要分場景選用,普通實例和 Serverless 實例如何選型?這裏我們列出二者的功能及適用場景的異同。在高可用方面,兩種實例都支持多節點集羣的多可用區部署,只是 SLA 稍有區別。在運維方面,用戶需要手動升級普通實例的版本,並關注底層資源監控指標,到閾值時及時手動變配。而Serverless 實例會進行自動升級和彈性擴縮容,用戶不需要做複雜的容量規劃和手動變配,也不需要關心 CPU、內存等資源的監控和告警。

對於雲原生網關,普通實例支持的通信協議和認證鑑權種類稍多,具備硬件加速和可擴展性能力。Serverless 實例也支持了主流協議和認證鑑權方式,能覆蓋大部分的用戶需求。

綜上所述,Serverless 實例更多是面向中小規模業務,間歇潮汐型場景,測試環境。而且用戶希望免運維,更簡單地使用後端服務。普通實例面向的是中大規模業務,希望掌控部分運維工作,並有更多自主性,擴展性需求的用戶。

 

MSE Serverless 如何降本

用戶無論是自建還是使用普通實例,一般會根據高業務負載購買相關的規格,按固定資源付費。這樣在波谷期浪費的資源較多,整體成本較高。如果出現預期外的大業務流量,資源不足會使業務受損。Serverless 實例能進行快速且獨立的擴容和縮容,在快速響應業務變化的同時,合理優化使用成本,助力企業降本增效。

註冊配置中心 Serverless 實例按照客戶端到服務端的連接總數計費,每十個連接爲一個計費單位,階梯定價,小時計費,具體價格如下圖表格所示。假設用戶的業務量平穩,如折線圖所示,橙線代表 Serverless 實例月價,藍線代表普通實例的專業版集羣月價。當小時連接數一直在十個或十個以內,Serverless 實例的月費用是 115 元。即使到了 50 個連接的業務量,都要比 Nacos 或 ZooKeeper 開源自建成本更低。在 100 個連接以內,Serverless 實例費用比普通實例更低,所以對於中小規模業務更優。

雲原生網關 Serverless 實例統計每小時處理請求量,每 1 萬個請求爲一個計費單位,階梯定價,小時計費,具體價格如下圖表格所示。假設用戶的業務量平穩,如折線圖所示,橙線代表 Serverless 實例月價,藍線代表普通實例集羣月價。每小時累計請求在 5 萬以內,Serverless 實例相比開源自建成本更低,在 20 萬請求以內,比普通實例更低。

上述假設是業務量較小且保持在一定量級,除此之外,Serverless 對於間歇、潮汐式場景,累計費用也更低。如下面的柱狀圖所示,假設 10 個小時內業務量有較大變化,剛開始每小時請求量爲 20 萬~30 萬,最高峯爲每小時 200 萬,然後逐漸回落。對於網關這種關鍵入口,普通實例需要預留資源保證能夠支撐 200 萬請求量的業務峯值。但對於 Serverless 實例,它的費用隨業務量變化而不同。雖然在峯值時段 Serverless 實例的小時費用更高,但整個時段的費用累加後,明顯看出它的成本更優。

MSE Serverless 版已於 11 月 17 日正式商業化,並推出相應的節省計劃,用戶可以根據註冊配置中心和雲原生網關 Serverless 實例每天的費用,按天承諾一定的消費金額進行預付費,可享受 8 折到 95 折不等的抵扣優惠,可進一步降低用戶的長期使用成本。不到 100 元的月消費,您即可享用到 K8s Ingress、微服務網關、安全網關三合一的雲原生網關,或是穩定安全免運維的註冊配置中心,快來構建你的 Serverless 微服務架構吧!

相關鏈接:

MSE Serverless 實例簡介:

https://help.aliyun.com/zh/mse/getting-started/mse-serverless-instance-introduction

註冊配置中心實例及版本選型:

https://help.aliyun.com/zh/mse/product-overview/select-an-edition

註冊配置中心 Serverless 實例計費概述:

https://help.aliyun.com/zh/mse/product-overview/serverless-instance-billing-overview

雲原生網關實例選型:

https://help.aliyun.com/zh/mse/product-overview/select-a-gateway-instance

雲原生網關 Serverless 實例計費概述:

https://help.aliyun.com/zh/mse/product-overview/serverless-instance-billing-overview-1

作者:問思

原文鏈接

本文爲阿里雲原創內容,未經允許不得轉載。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章