博客專欄

EEPW首頁 > 博客 > 無例可循,雙十一倒逼出中國互聯(lián)網(wǎng)「三高架構(gòu)」

無例可循,雙十一倒逼出中國互聯(lián)網(wǎng)「三高架構(gòu)」

發(fā)布人:機器之心 時間:2022-11-19 來源:工程師 發(fā)布文章


支付寶在沒有先例可循的情況下,自主研發(fā)構(gòu)建起一個互聯(lián)網(wǎng)三高(高并發(fā)、高性能、高可用)架構(gòu)的代表。


對大多數(shù)人而言,今年的雙十一可謂是無感而過。然而,這個「無感」正是今年支付寶技術(shù)團隊的一個重要目標(biāo)。
隨著「雙十一」進入第 14 個年頭,這一現(xiàn)象級的標(biāo)志性活動在很大程度上已經(jīng)融入國人的日常生活,因而顯得不再那么特殊——打折促銷天天有,滿減秒殺是基操,消費者已經(jīng)習(xí)慣了隨時隨地都能下單,同城快遞隔天就到。
但是,在這些看似尋常的體驗背后,是整個零售電商和物流系統(tǒng)能力的規(guī)?;嵘鴶?shù)字支付作為其中最關(guān)鍵的一環(huán),和往年一樣,也面臨著一系列新的復(fù)雜的技術(shù)優(yōu)化挑戰(zhàn)。

圖片


自誕生時起,「雙十一」便是一個極具挑戰(zhàn)和實際價值的技術(shù)命題。高質(zhì)高效地保障雙十一大促工作的進行,涉及基礎(chǔ)設(shè)施、存儲、中間件、業(yè)務(wù)架構(gòu)、交互技術(shù)與安全等多個技術(shù)領(lǐng)域,需要多部門緊密配合,能夠集中體現(xiàn)一個團隊的資源統(tǒng)籌、技術(shù)積累、工程實力和創(chuàng)新能力。
2022 年雙十一期間,在多類日常業(yè)務(wù)以外,支付寶要為淘寶/天貓、抖音、快手、拼多多等客戶提供線上交易服務(wù)(包括海外支付),支持合作的****、購物中心等機構(gòu)的線上線下支付業(yè)務(wù),這些交易請求來自 POS 機、網(wǎng)銀、瀏覽器、小程序、各商戶 App 等不同平臺,覆蓋了直播秒殺、跨店滿減、小額免密、先享后付等多個支付場景,較長的促銷周期和多商戶線上線下疊加不僅意味著多個流量洪峰,也進一步提升了峰值的不確定性。
面對今年「多平臺、多場景、多峰值」的壓力,如何保障系統(tǒng)穩(wěn)定,如何在控制成本的同時確保系統(tǒng)容量可伸縮?本文將從超大規(guī)模分布式系統(tǒng)穩(wěn)定性和高可用建設(shè)角度出發(fā),嘗試理解支付寶技術(shù)架構(gòu)演進中的一些關(guān)鍵技術(shù)和思路。
由點到面,應(yīng)對多平臺、多場景、多峰值
為了應(yīng)對新形勢下的雙十一,今年 3 月份開始,支付寶團隊啟動了「川流計劃」,取川流不息之意,喻支付體驗順暢,將沉淀了多年的電商服務(wù)能力原子化,形成了一套面向全行業(yè)的產(chǎn)品解決方案,目標(biāo)是隨時隨地、快速支撐任何一家商戶的大促。
技術(shù)團隊重點聚焦大促服務(wù)的常態(tài)化能力構(gòu)建,以業(yè)務(wù)和需求為導(dǎo)向,確保做到穩(wěn)定如常、體驗如常、成本如常、效率如常。
圖片
今年以淘寶/天貓為首的各商家將大促時間提前到了 11 號的晚 8 點,與線下購物的高峰期重合,再加上其他常規(guī)業(yè)務(wù),需要確保不同業(yè)務(wù)之間有充分的隔離性,能夠同時達到穩(wěn)定的狀態(tài)。支付寶團隊通過自適應(yīng)泄洪、多商戶動態(tài)異步化技術(shù),在更加隨機化的大促場景下持續(xù)保持支付的可用性及高性能,同時通過分時復(fù)用,在線離線混合部署,無感化彈云等技術(shù),大幅提升效率和降低成本。
盡管用戶側(cè)感知不強,往年雙十一為保證峰值平穩(wěn)會做部分不緊急任務(wù)降級、暫緩處理,例如無法查詢花唄賬單等,今年通過讀時提交等新的技術(shù),保障退款、提現(xiàn)等業(yè)務(wù)服務(wù)不受損,交易收單功能也做了升級,讓消費者在訂金、現(xiàn)貨、尾款等各階段都具備相同的支付能力。
其中,為了滿足如今商家在直播時代的秒殺訴求,團隊重點構(gòu)建了秒級高可用技術(shù),動態(tài)維持秒殺性能,將支持秒殺的能力提升了一個量級,包括通過近端計數(shù)和異常感知,自動降級弱依賴業(yè)務(wù),進一步提高并發(fā),構(gòu)建無感化彈云等創(chuàng)新技術(shù),實現(xiàn)更快的容量伸縮,從而確保每個商家都能在自己的平臺發(fā)起秒殺活動。
雙十一流量洪峰和隨之而來的峰值時刻高并發(fā)的處理效果,向來是雙十一技術(shù)保障工作的一大看點。但不同于過往雙十一的流量洪峰,秒殺服務(wù)本質(zhì)上是一種營銷服務(wù),如果把這個秒級交易分攤到日常,對服務(wù)器成本的要求其實并不高。但隨著直播秒殺成為一種常規(guī)化的營銷手段,為了滿足眾多商家在較長的促銷周期內(nèi)隨機性發(fā)起的千千萬萬的秒級峰值,需要有大量的機器成本的投入。
圖片
「這也是今年我們的底氣,能夠保障那么多商家在雙十一期間的秒殺?!怪Ц秾毊a(chǎn)品技術(shù)負責(zé)人善攻說,「從 0 點到 8 點,用戶不用再熬夜了,對支付寶來說,面臨的情況就是各個平臺不同模式和玩法的峰值疊加,再碰到線下支付的高峰。我們并沒有把成本轉(zhuǎn)嫁到客戶身上,而是通過技術(shù)迭代、資源協(xié)調(diào)等來實現(xiàn)更智能、更綠色、更高效的服務(wù)。我們也認為,只有具備普適性才可以對全社會提供可持續(xù)的服務(wù)?!?/span>
支付寶高并發(fā)、高性能、高可用架構(gòu)演進
這些年來,隨著業(yè)務(wù)特點和規(guī)模的發(fā)展變化,尤其在歷屆雙十一的極端需求倒逼之下,例如從應(yīng)對 0 點的單一流量洪峰到滿足多平臺支付需求和效率,支付寶完成了數(shù)次大的架構(gòu)演進,逐漸形成了一套包括金融級分布式交易、分布式大數(shù)據(jù)分析與決策、智能化風(fēng)險防控等在內(nèi)的完整架構(gòu)與技術(shù)體系。
第一階段:轉(zhuǎn)型分布式 SOA 架構(gòu),成為互聯(lián)網(wǎng)電商支付工具
支付寶最初服務(wù)于淘寶網(wǎng),用擔(dān)保交易和支付這一項功能打開了用戶網(wǎng)購的習(xí)慣,從 2005 年起開始服務(wù)整個互聯(lián)網(wǎng)的電商支付。在這個階段,其應(yīng)用架構(gòu)開始向分布式 SOA 架構(gòu)轉(zhuǎn)型,對交易、支付、賬務(wù)、收銀臺等核心系統(tǒng)做服務(wù)化改造。
為解決引入分布式體系而帶來的業(yè)務(wù)和系統(tǒng)復(fù)雜性等問題,團隊重點聚焦實現(xiàn)集群的一致性,主要包括確保分布式數(shù)據(jù)一致性和在分布式環(huán)境下進行系統(tǒng)監(jiān)控的問題。對此,支付寶基于兩階段事務(wù)原理自研了相應(yīng)的分布式事務(wù)框架和微服務(wù)框架,同時構(gòu)建了第一代監(jiān)控系統(tǒng),擺脫了黑屏命令行監(jiān)控,從穩(wěn)定的分布式事務(wù)體系應(yīng)用架構(gòu)和系統(tǒng)化的監(jiān)控報警平臺,奠定了后續(xù)高可用架構(gòu)的基礎(chǔ)。
第二階段:去 IOE,解決存儲單點擴展和穩(wěn)定性問題,流量從百萬到千萬
隨著支付寶從單一支付工具逐漸成為一個互聯(lián)網(wǎng)金融平臺,系統(tǒng)支撐的流量激增,使用大量服務(wù)器支撐雙十一流量洪峰構(gòu)成了巨大的成本壓力,以及其他很多不確定性因素。2011 年開啟去 IOE 戰(zhàn)略(不再使用 IBM 小型機、Oracle 數(shù)據(jù)庫、EMC 高端存儲,轉(zhuǎn)向自主掌控的技術(shù))。在此背景下,團隊從應(yīng)對大流量帶來的高并發(fā)和穩(wěn)定性風(fēng)險角度出發(fā),解決核心系統(tǒng)級別的穩(wěn)定性和可擴展性問題,奠定了這一代高可用架構(gòu)的基石。
第三階段:異地多活架構(gòu),流量彈性伸縮
金融級產(chǎn)品對穩(wěn)定性有極高的要求,需要加速實現(xiàn)金融級異地多活的高可用架構(gòu)。作為螞蟻代表性技術(shù)的邏輯單元 LDC(Logical Data Center)在這一階段被提出,相對于傳統(tǒng)的 IDC(Internet Data Center-IDC),確保分布式系統(tǒng)在邏輯上的協(xié)調(diào)與統(tǒng)一。與 OceanBase 數(shù)據(jù)庫相結(jié)合,支付寶團隊實現(xiàn)了兩地三中心和三地五中心的城市級異地多活高可用架構(gòu),主要解決機房擴展性、數(shù)據(jù)容災(zāi),以及大促期間機房快速彈性問題。
也是從這一時期開始,雙十一的峰值和日常業(yè)務(wù)峰值差別越來越大,因此基于 LDC 架構(gòu)靈活的流量調(diào)度能力,實現(xiàn)了機房級別彈性擴展能力,在大促前將流量彈回到新的機房,在大促結(jié)束后快速回收該機房。2016 年的雙十一,支付寶全天完成交易筆數(shù)為 10.5 億筆,支付峰值 12 萬筆/秒,大促中 50% 流量基于云計算資源彈性伸縮。
第四階段:原生混合云部署,提供全球性的互聯(lián)網(wǎng)金融服務(wù)
隨著螞蟻集團對云原生理念的投入,堅信未來的金融級應(yīng)用場景都會往極致的彈性和混合云方向發(fā)展,2017 年開始云原生架構(gòu)啟動實施,螞蟻全站應(yīng)用上云,支付寶開始嘗試離在線混部和分時調(diào)度技術(shù),在大促時利用離線技術(shù)所使用的集群資源,大大提升了集群資源利用率。
向云原生轉(zhuǎn)型的過程中,不同場景的應(yīng)用很難一步到位,為了滿足不同的業(yè)務(wù)需求,在云原生的改造中,新老業(yè)務(wù)并存過渡,通過統(tǒng)一的研發(fā)平臺,同時支持基于虛擬機和容器的雙模持續(xù)交付,助力于整個架構(gòu)的穩(wěn)妥的演進和遷移??紤]到商家服務(wù)全面開放、大促活動常態(tài)化,生活服務(wù)、保險、理財、公益等各項業(yè)務(wù)的發(fā)展和形態(tài)趨于多樣化,支付寶團隊意識到需要把高可用做成一項常規(guī)能力,并且從風(fēng)險視角構(gòu)建一套架構(gòu)體系從根源上確保穩(wěn)定性。
針對外部環(huán)境的劇烈變化(如活動帶來的流量突增、機房故障等)、內(nèi)部節(jié)點異常(如數(shù)據(jù)庫宕機,服務(wù)器宕機等)和人為變更的風(fēng)險(如代碼發(fā)布,配置推送等)這三類主要風(fēng)險,支付寶建設(shè)了如變更防控體系、容量風(fēng)險體系、應(yīng)急定位體系等風(fēng)險防控體系,實現(xiàn)系統(tǒng)化的三板斧(可監(jiān)控、可灰度、可回滾)要求,并引入數(shù)據(jù)智能化手段進行精細的風(fēng)險識別,構(gòu)建仿真環(huán)境以模擬故障及驗證問題。
圖片
從業(yè)務(wù)中來,到業(yè)務(wù)中去從容應(yīng)對多峰高并發(fā)
從最初淘寶平臺上的一種擔(dān)保交易和支付功能,到如今提供支付、生活服務(wù)、政務(wù)服務(wù)、理財、保險等眾多能力的數(shù)字生活開放平臺,支付寶在沒有先例可循的情況下,構(gòu)建起一個中國乃至世界范圍內(nèi)互聯(lián)網(wǎng)三高(高并發(fā)、高性能、高可用)架構(gòu)的代表。
2017 年,支付寶處理支付峰值 25.6 萬筆/秒,已經(jīng)成為全球最大的一家 OLTP 處理實體,但同時卻繼承了互聯(lián)網(wǎng)公司特有的超大規(guī)模用戶量(截止 2020 年,支付寶在全球擁有超過 12 億用戶),支付寶的技術(shù)架構(gòu)發(fā)展歷程,也可以說一個持續(xù)不斷地在性能與成本、業(yè)務(wù)需求與用戶體驗之間取舍平衡的三高架構(gòu)演進史。
脫離實際業(yè)務(wù)需求的技術(shù)往往于業(yè)務(wù)產(chǎn)生不了最大實用性價值,只有在服務(wù)業(yè)務(wù)、保障業(yè)務(wù)持續(xù)可用過程中沉淀下來的技術(shù),才是最有價值的技術(shù)。正是因為一次次雙十一的倒逼創(chuàng)新,支付寶的實踐證明在金融級中間件、數(shù)據(jù)庫和云計算平臺的支持下,分布式架構(gòu)完全能夠勝任復(fù)雜、高要求的金融級交易。
在如今這個時代,一家公司要走得更遠,只有提供更好的服務(wù),滿足用戶更加苛刻的需求。構(gòu)建常態(tài)化的雙十一技術(shù)服務(wù)能力只是開始,隨著業(yè)務(wù)發(fā)展和服務(wù)類型變得更加復(fù)雜多樣,多峰高并發(fā)將不僅僅是支付寶的日常。在萬物互聯(lián)的智能時代,什么樣的技術(shù)和架構(gòu)可以應(yīng)對無處不在的計算,將不僅僅是支付寶團隊需要解決的重大命題。


*博客內(nèi)容為網(wǎng)友個人發(fā)布,僅代表博主個人觀點,如有侵權(quán)請聯(lián)系工作人員刪除。



關(guān)鍵詞: AI

相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉