作者 | 中介軟體支援集團上雲技術小組
2019 年,阿里巴巴核心系統 100% 執行在阿里雲上。2021年,阿里巴巴業務 100% 雲原生化。阿里巴巴已經成為全球首家,將所有業務都放在自家公共雲上的大型科技公司。
舉全集團之力,將業務全部遷移至公共雲,不僅是對雲的篤定,也證明了阿里雲有能力應對高難度、超複雜環境下的技術挑戰,為客戶享受雲上技術紅利提供了更堅實的實踐保障。
01 架構一致性,開源、自研、商業化三位一體
在今年的天貓雙 11 中,中介軟體支撐了 5403 億的交易量,並全面升級到了公共雲架構。
此次的架構升級,是以開源為核心、以公共云為基礎、以 OpenAPI 進行解偶擴充套件,在架構上,對開源、自研、商業化進行統一。透過採用和反哺開源、推動社群建設,透過阿里巴巴豐富的業務場景、打磨技術的效能和可用性,透過雲上商業化服務更多企業、打造更好的使用者體驗,全方位錘鍊雲上產品的競爭力。
這個過程中,阿里巴巴業務的研發效率提升了 20%,CPU 資源利用率提升了 30%,應用 100%雲原生化,線上業務容器可達百萬規模,計算效率大幅提升,雙 11 計算成本下降 30%。
接下去,我們將全方位揭秘業務 100%雲化過程中,後端 BaaS 化,執行時 Mesh 化,業務側 Serverless 化的全過程。
02 中介軟體後端 BaaS 化,有狀態應用也可分鐘級交付
以往的雙 11 建站交付都是線性的。先交付 IaaS 資源,然後再交付中介軟體,最後再交付業務。
今年,中介軟體升級到公共雲架構後,IaaS 資源和中介軟體同步交付,節省了兩者序列交付的時間。中介軟體公共雲架構運維底座全部切到 K8s 上,讓有狀態的中介軟體也能做到極致彈性,使得中介軟體的交付效率從天級別,降低到了分鐘級,極大地提升了交付效率,降低了資源保有時間和資源成本。
後端的支撐系統也全面升級,如透過對接阿里雲賬號許可權體系,來解決安全問題;透過對接計量計費體系,來解決 IT 資產數字化問題,為集團各個技術團隊的經營者可以透過賬單形式,視覺化的進行成本最佳化。
在使用者介面上,也升級支援了 IPv6,為阿里巴巴生產網全面向 IPv6 架構演進做好了準備。
03 海外業務 Mesh 化,異地多活可下沉 Sidecar
阿里巴巴海外有 AE&Lazada 等多種業務形態,異地多活體系侵入性大,技術架構不統一,從而影響了全域性高可用和研發協同效率。
隨著服務網格架構的演進和成熟,我們逐步將服務路由標準化,路由功能層次化,透過外掛模式讓業務進行擴充套件,讓異地多活體系下沉到 Sidecar,和業務邏輯解偶,探索異地多活通用、無侵入、低成本的解決方案。今年,這套體系在海外業務得到了充分驗證,為未來商業化積累了實踐經驗。
隨著 Mesh 化服務架構的深度應用,除了異地多活功能下沉 Sidecar,阿里巴巴還基於 Mesh 化架構,統一了流量排程技術與產品架構,降低了流量排程實施和治理成本,提升服務容災能力和線上服務治理效率,實現了更加靈活和穩定的排程規則下發及單元間切流。
04 業務側 Serverless 化,實現研發提效 38%,彈性提升 200%
Serverless 是阿里巴巴降本提效的首選技術方案。
今年雙 11,Serverless 不僅成功承載了 3 倍的峰值流量 ,支撐應用場景數量也提升了 2 倍,整體研發運維體系提升 38%,主要表現在以下兩個關鍵點上。
1、夯實三位一體技術體系,使用阿里雲函式計算 FC 支撐大促全面 Serverless 化
函式計算 FC 與阿里內部的運維體系,實現全面標準化對接,打通研發的最後一公里。首次實現了業務全鏈路“ FaaS + BaaS ”的 Serverless 全流程研發體系。
在函式計算進入集團之前,雲上的 Serverless 技術體系一直無法融入到開發者生態,雖然功能豐富、強大,但是無法被業務使用,甚至出現了使用 Serverless 技術後,研發成本反而增高的情況。所以,在 2021 年,我們發力 Serverless-Devs 工具鏈,基於標準的介面與集團內部的技術社群,共同打造了專屬於 Serverless 的研發體系,把雲上的技術巧妙的融入到了集團。
透過雙 11 大促場景作為“磨刀石”,把關鍵的核心技術進行進一步打磨,然後反哺給雲上的商業化產品和工具鏈,夯實三位一體的技術體系,今年交出了滿意的答卷,全面支撐 2021 天貓 雙 11 各類業務場景,覆蓋淘特、淘系、阿里媽媽、1688、高德和飛豬等多類業務場景,數量提升 2 倍,峰值流量總數同比增加 3 倍,實現了 50w QPS 的突破,整體研發提效達到 38%。
02
2、加大 Serverless 硬核技術投入,阿里內部透過天貓雙 11 場景打磨,外部透過公共雲輸出、服務千萬家企業
在 Serverless 的場景下,冷啟動的速度是客戶選型的關鍵,也是雲上產品的核心競爭力,。
今年,我們加大了硬核技術研發的投入,從“彈性策略”、“映象分發”、“容器啟動” 等全方位對冷啟動進行了效能提升,冷啟動時間進一步縮減 60%,剛性交付能力提升 200%。在年初,函式計算剛應用於集團內部時,Runtime 層的冷啟動時間在秒級別,並且需要初始化中介軟體,整體的冷啟動時間要大於 2s,這嚴重製約了 Serverless 的使用場景。
所以,我們在映象分發上,創新性發明瞭 Serverless Caching 。根據不同的儲存服務特點,構建資料驅動、智慧高效的快取體系,實現軟硬體協同最佳化;即便在 GB 級別映象冷啟動的場景下,函式計算也能提秒級別的交付能力。
在排程上,相比去年,增加了定時/CPU 等更多指標的彈性策略,並且基於集團內資源統一排程的能力,支撐了天貓雙 11 業務的 10w 級別的例項彈性。在容器層,使用了自研的安全容器池化技術,在容器啟動上,時間進一步縮小到 50ms 以內。
這些技術,都已經在雙 11 場景下得到驗證,也在公共雲上全面輸出,已經幫助我們的合作伙伴輕鬆應對業務高峰。
05 從 Ops 到 Dev,雲原生的技術改造正進入下半場
第一時間讓客戶使用跟阿里巴巴一樣的技術,是中介軟體開源、自研、商業化三位一體的初衷。這些源自三位一體的產品正幫助雲上客戶更好的提升 Ops 的效率。
三位一體的商業化輸出包括:
- 微服務引擎 MSE:註冊&配置中心全(原生支援 Nacos/ZooKeeper/Eureka)、閘道器(原生支援 Ingress/Envoy)和無侵入的開源增強服務治理(原生支援 Spring Cloud/Dubbo);
- 訊息佇列 MQ:原生支援 Apache RocketMQ、Apache Kafka;
- 應用實時監控服務 ARMS:原生支援 Prometheus,提供基於開源的 Tracing 能力;
- 應用高可用服務 AHAS:原生支援 Sentinel、ChaosBlade;
- 函式計算 FC:支援開發者工具開源 Serverless Devs、開源可觀測工具等。
雲計算和雲原生技術上半場更多的是解決的是 Ops 的問題,我們相信下半場更多是關注 Dev 的問題。
圍繞著開發者效率的提升,中介軟體已經完成了 Serverless、應用執行時、低程式碼、雲邊一體,線上 IDE 等關鍵領域的技術佈局,透過服務網格和應用執行時等技術,將非業務邏輯下沉,並且透過外掛模式,形成新的研發分工,讓中介軟體研發遮蔽底層複雜技術,讓安全研發在應用執行時這層建立可信的安全防線,讓高可用研發在底層通用的構建熔斷、限流、降級、異地多活等能力,讓業務更輕量,更聚焦業務本身開發,更高效的構建業務競爭力。