我们如何实现“业务 100% 云原生化,让阿里中间件全面升级到公共云架构”?
簡介:在今年的天貓雙 11 中,中間件支撐了 5403 億的交易量,并全面升級到了公共云架構。 此次的架構升級,是以開源為內核、以公共云為基礎、以 OpenAPI 進行解偶擴展,在架構上,對開源、自研、商業化進行統一。通過采用和反哺開源、推動社區建設,通過阿里巴巴豐富的業務場景、打磨技術的性能和可用性,通過云上商業化服務更多企業、打造更好的用戶體驗,全方位錘煉云上產品的競爭力。
作者 | 中間件支持集團上云技術小組
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%。
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 等關鍵領域的技術布局,通過服務網格和應用運行時等技術,將非業務邏輯下沉,并且通過插件模式,形成新的研發分工,讓中間件研發屏蔽底層復雜技術,讓安全研發在應用運行時這層建立可信的安全防線,讓高可用研發在底層通用的構建熔斷、限流、降級、異地多活等能力,讓業務更輕量,更聚焦業務本身開發,更高效的構建業務競爭力。
原文鏈接
本文為阿里云原創內容,未經允許不得轉載。?
總結
以上是生活随笔為你收集整理的我们如何实现“业务 100% 云原生化,让阿里中间件全面升级到公共云架构”?的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 阿里云神龙团队拿下TPCx-BB排名第一
- 下一篇: 阿里云CDN操控2.0版本正式发布