您的位置:首頁»數碼科技»正文

螞蟻金服黑科技:SOFA DTX分散式事務,保障億級資金操作一致性

眾所周知, 2007年的時候, 整個淘寶網是一個幾百百萬位元組的WAR包(Java網站應用套裝程式), 大小功能模組超過200個, 在當時淘寶業務幾乎每隔幾個月就翻倍的高速發展情況下, 這樣的應用架構給當時有著500多人的淘寶技術團隊帶來了很大的壓力。 螞蟻金服的前身支付寶團隊當時也在淘寶裡, 作為淘寶的支付交易模組。 而從2006年底開始, 現任螞蟻金服CTO、時任支付寶第一代架構師程立(花名:魯肅)就開始思考對於支付寶架構的改造, 以適應整個淘寶的架構發展, 這就是螞蟻金服中介軟體的源起。

從淘寶“大餅一沱”的緊耦合系統中分拆出來的松耦合系統,

就只有分散式運算架構可選, 而淘寶又是互聯網應用, 於是就需要創造出一個互聯網規模的分散式運算架構, “分散式事務”就是在這個拆分過程中出現的問題。 淘寶最初是基於IOE設備, 無需考慮事務一致性的問題;而在互聯網分散式架構下, 由於網路和PC伺服器等設備的不可靠, 資料不一致問題很容易出現。 而支付寶作為金融交易系統, 對事務型的狀態資料一致性處理以及交易成本的要求更高, 這背後就是資金安全:資金處理絕對不出差錯, 交易與資料具備強一致性, 在任何故障場景資料不丟不錯。

現任螞蟻金服數據中介軟體負責人尹博學(花名:育睿)介紹:螞蟻金服分散式事務(Distributed Transaction-eXtended,

簡稱 DTX)除了協調資料庫的事務之外, 還可以協調服務的一致性, 是在資料庫層之上, 從業務層保證不同業務之間的資料一致性——即複雜系統之間的一致性, 這就是面向未來的核心金融系統。 DTX之所以被稱為“黑科技”, 是因為自設計之初到現在, 無論系統多麼複雜、交易規模多麼龐大, DTX都能在極短的時間內實現資料的一致性:用戶無論在哪裡, 都可放心、流暢地使用支付寶。

(螞蟻金服數據中介軟體負責人育睿)

黑科技到底有多“黑”?

尹博學是在2017年被吸引加入螞蟻金服, 之前他在百度也做著類似的工作, 但螞蟻金服在金融級交易這個領域的規模全球獨一無二:螞蟻金服DTX在分散式架構下做到了交易資料的強一致,

是目前唯一在超大規模金融級分散式架構上實戰驗證過的分散式事務方案。

尹博學強調, “事務”是貫穿于所有的金融交易, 而金融級交易的資料一致性是要強保證的。 例如, 支付寶用戶A給支付寶用戶B轉錢, A減錢、B就必須要同時加上錢, 這兩個動作必須一起成功或是一起都不成功, 而不能成功一半, 也就是說不能A減了錢但B沒有加上, 這就會導致資損。

本質上, 金融核心系統中的微服務架構, 在進行業務垂直拆分和資料水準拆分後, 存在大量的微服務和單中繼資料庫, 一個完整金融業務需要調用多個服務和資料庫完成。 同時, 不僅微服務之間需要解決一致性問題, 不同系統之間的調用也存在事務邊界問題,

那麼強一致的分散式事務服務就將發揮重要作用。

DTX分散式事務服務能滿足複雜場景和高併發的挑戰, 充分考慮各類異常情況, 且具備足夠的伸縮性、高併發和高可用性, 支援跨機房的事務協調能力。 “這一整套的協調方式, 雖然不是我們獨創, 但可以認為螞蟻金服做到了工程的極致。 程立最初設計分散式事務的時候, 當時只有BASE是一種相對比較成熟的理論, 但能達到螞蟻金服這個量級的, 目前只此一家。 除了性能和吞吐之外, 還要衡量考慮擴展性。 集中式架構下用DB2或者Oracle架構, 可以從1萬個事務提到10萬個事務, 但是從10萬提到200萬就幾乎不可能;螞蟻金服可從200萬變到2000萬, 甚至更高, 而且成本低。 ”尹博學表示。

DTX黑科技的亮點很多,

其中包括:大規模、高擴展、高性能、低成本等。 2017年, DTX支持了雙十一峰值25.6萬TPS的支付請求;涉及支付、轉帳、理財、保險等各種業務場景;在支付寶內部, 接入DTX的系統超過100+個;每天處理資金以千億記, 確保資金的絕對安全;按照雙活可擴展設計, 不受地域、機房等限制, 無限加PC伺服器等機器就能水準無限擴展;而當出現故障的時候, 可很快恢復。 整個過程, 從始自終, 都絕對保證資金安全。

從方法論上保證強一致

2007開始支付寶核心開始SOA服務化之路, 服務化拆分一開始就遇到了跨服務分散式事務問題。 傳統的基於資料庫本地事務的解決方案, 只能保障單個服務的一次處理具備原子性(一次事務中所涉及的所有操作全部執行或全部不執行)、隔離性、一致性與持久性, 但無法保障多個分佈服務間處理的一致性。由於業務約束(如紅包不符合使用條件、帳戶餘額不足等)、系統故障(如網路或系統超時或中斷、資料庫約束不滿足等),都可能造成服務處理過程在任何一步無法繼續。一旦資料不一致,就會產生嚴重的業務後果。

傳統分散式事務需保證ACID屬性,強調一致性,要求強一致;而BASE則是與之相對立的理論,認為為了可用性(Availability)而犧牲部分一致性(Consistency)可以顯著的提升系統的可伸縮性,這就是非同步作業。螞蟻金服分散式事務產品DTX分別基於兩種理論實現了兩種模式:基於BASE理論的TCC模式和基於ACID理論的FMT模式。

TCC方案其實是兩階段提交的一種改進,將整個業務邏輯的每個分支分成了Try、Confirm、Cancel三個操作,其中Try部分完成業務的準備工作、Confirm部分完成業務的提交、Cancel部分完成事務的回滾。這三步僅僅是方法論,具體在每一步的操作實現,則由所涉及的服務自行設計代碼實現。以簡單的A向B轉帳為例,A加錢與B減錢的操作由兩個參與方服務來實現,A和B的兩個Try會同時進行業務系統檢測和資源預留,只有兩個Try都成功了才會往下進行Confirm操作以提交金額的增減。對於複雜的操作,還會在一個分散式事務裡嵌套多層參與方,只有每層的Try都成功了,才會完成整個分散式事務的第一階段,中間一旦任何一層失敗都會回滾。

為了解決 TCC 模式的易用性問題,螞蟻分散式事務後來又推出了框架託管模式(Framework-managed transactions,簡稱 FMT)。FMT是一種無侵入的分散式事務解決方案,該模式解決了分散式事務的易用性問題,在該模式下,開發者只需關注一階段操作,框架會自動解析SQL語義,生成二階段提交和回滾操作,使分散式事務的接入更便捷,該模式下對業務代碼幾乎無侵入,框架能夠“自動化”地解決分散式架構下的資料一致性問題。

“DTX本身是有嵌套的,如果調了一個服務,可能它下面還調用了其它服務,也是分散式的,從而形成多級複雜嵌套。DTX是一個方法論級的保證,不管分多少級,只要層層提交成功了,最終就都能成功提交。”尹博學介紹。DTX本身帶有即時監控,可以監控即時的事務資訊,包括事務數、成功率、平均耗時等,也可以與鏈路監控相結合,根據DTX上報的即時資訊,提供歷史趨勢圖、同比/環比分析、報警等功能。

這樣的DTX就能夠保證每年的雙十一支付峰值。2017年的支付峰值25.6萬筆/秒,相當於200萬個分支事務,也就是這200萬分支事務都要達到最終一致狀態。在峰值的那幾秒鐘,DTX每秒鐘要維護200萬分支子事務,監控它們的狀態運行,要保證達到最終的一致性;如果200萬個分支事務裡面發現不一致,就要快速處理。支付寶雙十一大促的交易筆數和峰值每年都在以驚人速度大幅增長,螞蟻金服所面臨的極端技術挑戰——如何支撐如此大規模交易並保證一致性問題,在全球範圍來看都不曾有企業實現過。

如今,整個DTX團隊規模並不算大,那又是怎麼實現25.6萬筆/秒的世界級工程呢?

在阿裡集團工作了8年的郎曉東(花名:冰魂)介紹:極致工程主要是靠非同步化來實現,也就是延遲提交。在延遲提交的情況下,資料還是對的,不阻礙交易流程,這就叫非同步化。也就是說,在極限峰值的情況下,支付寶能向淘寶的請求發出Confirm,保證雖然現在沒執行但5分鐘之後一定會執行,那麼淘寶就可以放心地告訴用戶購買成功了。因為雙十一大促的最高峰值通常持續時間不長,那麼在洪峰之後,稍有喘息就可以釋放IT資源來處理“蓄洪”那部分操作。“非同步只是在極限情況下採用,雙十一零點一過,又是同步了。非同步主要是針對成本,如果多加幾倍的機器,也可以做到同步,但用戶體驗要同成本效益達到最佳平衡,又要保證資金安全,因此就開發出了非同步的模式。”郎曉東表示,非同步模式讓DTX具有極強的可擴展性,交易量翻多少倍都可以支援。

當然,處理200萬個分支事務/秒的峰值,在搜索等其它非互聯網金融領域也是有互聯網公司能達到這樣的規模,但是要求的嚴格性不一樣。尹博學介紹,協調參與方多的時候,出錯的概率就高,一般架構的網站對嚴格性的要求並不強,資料不一致也問題不大,或者資料最終達到一致性但時間較長也無所謂。但螞蟻金服屬於金融業務,就必須要在高性能、低成本的前提下達到資料的強一致。

用軟體保證強一致

“總結螞蟻金服DTX在工程上的卓越性:首先就是能處理支付峰值200萬分支事務;其次是大規模互聯網分散式架構;第三,在資料分佈設計上採用了抵近存儲,也就是讓資料靠近業務,再通過批量技術來處理,以減少交互開銷、提升整體吞吐性。最重要的就是DTX是通過軟體實現分散式,保證處理能力的線性與水準擴展,沒有單點、消除單點。”尹博學強調。

所謂用軟體實現分散式,即不依賴底層的硬體,預設底層的硬體隨時會掛掉。而對於DTX來說,還是在最高的業務層實現的強一致,這就意味著甚至預設底層的資料庫也可以隨時掛掉。

早年間,淘寶還採用的是Oracle資料庫、MySQL開來源資料,後來又開發出了自研資料庫OceanBase。OceanBase(以下簡稱OB)金融級分散式關係型數據庫也是螞蟻金服的“黑科技”之一,讓使用者像使用單機資料庫一樣方便的使用OB,同時提供更高的性能與更好的服務穩定性等。

DTX的強一致與OB的強一致,有什麼區別呢?比如有一張用戶表,這張用戶表大到單機存不下,那麼就在OB裡存了兩台機器,例如是M1和M2兩台機器。一個事務既要操作M1上的一行資料,同時又要操作M2上的一行資料,那麼這個事務的一致性是由OB來保證。但在螞蟻金服架構裡還有一張更大用戶表,會被拆成25張用戶表,這25張用戶表中的每張可能“塞”到一個OB集群裡,從業務的角度要操作跨兩個OB集群的事務,這就是DTX來實現。

DTX主要定位於使用者視角的跨庫訪問,包括單服務、跨服務協調底層多存儲資源,支援多種底層資料庫,包括MySQL、Oracle、OB等。

對於DTX來說,這些下一層的資料庫,也被視為“硬體”。比如OB會認為磁片屬於比較慢的硬體系統,而DTX也同樣會極力優化下層資料操作的總體執行性能,因為要考慮到網路延時,這樣DTX就會把一次操作的多條SQL語句同時發給OB而不是順序發送,從而大幅提高單執行緒的處理能力。簡單理解,就是DTX作為處於最高業務層的強一致性方法,統領下面各層資源,在每一層都進行極致優化,從而達到整個DTX操作的最優化。“我們只能把軟體當成硬體來優化,一般的公司也不需要優化,因為也摳不到那麼細。”尹博學強調。

“沒有最大,只有更大”

在談到來螞蟻金服一年多的體驗,尹博學說這就是不斷突破對於“大”的認知。

“在螞蟻金服場景下,會突破對原有理論的認識,昇華到另一個境界。在這麼大的交易量下,很簡單的問題會變得很複雜。因為你沒有在這麼‘大’的場景下思考問題,你想當成認為理論就應該是這樣。但當遇到這麼大的交易量,會發現要考慮的很複雜。當你經歷過了這麼大的交易量,再用理論總結這個複雜問題時,發現它又會變得比較簡單。這是一個認識的深化,原來沒想到過這麼大的場景、這麼大交易量下的主要矛盾是什麼,發現了以後又變簡單了。”這是尹博學的感覺。

峰值達到每秒25.6萬筆、一天要生成幾十億筆交易的訂單號,這個“天量”已經突破了所有現有技術的極限,那麼解決“天量”規模背後的技術思想就是把同步事情變成提前做或延後做,“抓住這個思想,就會發現又變得簡單了,當然前提是要保證提前做或者延後做都是對的”。

DTX的對外輸出

如今,DTX技術在對外輸出的過程,又變得簡單了起來。張森(花名:紹輝)於2011年加入淘寶,於2015年轉到螞蟻金服,之後一直在中介軟體SOFA團隊,主要從事資料中介軟體分散式事務。

張森介紹,螞蟻金服的分散式事務有兩個名字:對內叫XTS,ExtendedTransaction Service可擴展事務服務;對外叫DTX,Distributed Transaction-eXtended分散式事務。2016年張森負責開發了分散式事務後臺運維的自動化,2017年分散式事務產品又開發了可託管版本:FMT,該模式主要是解決使用者接入和使用DTX的效率問題,讓用戶可以基本無侵入的方式下解決分散式事務問題。2018年螞蟻金服將推出第三代分散式事務解決方案,也就是XA(eXtended Architecture)模式,全面支援標準XA協定,覆蓋面廣,可無縫接入支援XA的資料庫、消息等,説明傳統業務上雲,並與自研資料庫OceanBase共同打造即時資料一致性的整體解決方案。

螞蟻金服的技術在2014年開始向生態夥伴和關聯機構輸出(比如網商銀行、天弘基金、Paytm等)。

在2017年,南京銀行成為了首個國內銀行機構客戶。在南京銀行互聯網金融平臺項目中,螞蟻金融級分散式架構解決方案作為一個整體輸出,而SOFA中介軟體包括DTX作為其中非常重要的一部分在項目中落地。2014年是螞蟻金融科技元年,為了更好的支持網商銀行的長遠發展,在架構設計初期網商銀行架構組就選型DTX做為分散式事務的解決方案。

總結DTX對外輸出的優勢:第一,相比競爭對手而言,DTX覆蓋的金融業務種類是最廣的,因為螞蟻金服是全金融場景,包括了支付、理財、銀行、保險等;第二,經過大流量檢驗過,成就了極致的工程實現;第三,理論發展較快,比如業界其它廠商還停留在TCC模式下,螞蟻金服已經針對雲上的新需求提出FMT、XA等模式,大幅度減少接入的複雜性,並能與螞蟻金服自研的分散式關係型數據庫OceanBase 共同打造即時資料一致性的整體解決方案;第四,金融級解決方案,通過專業的架構轉型諮詢和實施交付服務,使螞蟻金服沉澱多年的工程實踐精粹與行業落地能力能夠結合用戶自身的場景進行打通和賦能,為金融機構架構轉型帶來推動作用,同時也將開放場景定制化能力、大促保障等業務內容,為使用者進行量身定制打造最佳方案,為金融機構數位化轉型保駕護航。

回顧螞蟻金服SOFA DTX最近十年的發展過程,簡單講就是一個不斷求解金融場景超大規模交易量下分散式架構設計的問題及其工程實現,以優異的性能保障業務資料的一致性,支撐數億級用戶的資金操作。支付寶/螞蟻金服用十四年時間成就了8.7億全球用戶(2018年5月資料,包括支付寶及其全球合資夥伴)、小微企業與金融機構的普惠金融夢想。“為世界帶來更多平等的機會”,一個更加包容、更加可持續、更加綠色的數字金融——這才是螞蟻金服SOFA DTX分散式事務的黑科技之道。(文/寧川)

但無法保障多個分佈服務間處理的一致性。由於業務約束(如紅包不符合使用條件、帳戶餘額不足等)、系統故障(如網路或系統超時或中斷、資料庫約束不滿足等),都可能造成服務處理過程在任何一步無法繼續。一旦資料不一致,就會產生嚴重的業務後果。

傳統分散式事務需保證ACID屬性,強調一致性,要求強一致;而BASE則是與之相對立的理論,認為為了可用性(Availability)而犧牲部分一致性(Consistency)可以顯著的提升系統的可伸縮性,這就是非同步作業。螞蟻金服分散式事務產品DTX分別基於兩種理論實現了兩種模式:基於BASE理論的TCC模式和基於ACID理論的FMT模式。

TCC方案其實是兩階段提交的一種改進,將整個業務邏輯的每個分支分成了Try、Confirm、Cancel三個操作,其中Try部分完成業務的準備工作、Confirm部分完成業務的提交、Cancel部分完成事務的回滾。這三步僅僅是方法論,具體在每一步的操作實現,則由所涉及的服務自行設計代碼實現。以簡單的A向B轉帳為例,A加錢與B減錢的操作由兩個參與方服務來實現,A和B的兩個Try會同時進行業務系統檢測和資源預留,只有兩個Try都成功了才會往下進行Confirm操作以提交金額的增減。對於複雜的操作,還會在一個分散式事務裡嵌套多層參與方,只有每層的Try都成功了,才會完成整個分散式事務的第一階段,中間一旦任何一層失敗都會回滾。

為了解決 TCC 模式的易用性問題,螞蟻分散式事務後來又推出了框架託管模式(Framework-managed transactions,簡稱 FMT)。FMT是一種無侵入的分散式事務解決方案,該模式解決了分散式事務的易用性問題,在該模式下,開發者只需關注一階段操作,框架會自動解析SQL語義,生成二階段提交和回滾操作,使分散式事務的接入更便捷,該模式下對業務代碼幾乎無侵入,框架能夠“自動化”地解決分散式架構下的資料一致性問題。

“DTX本身是有嵌套的,如果調了一個服務,可能它下面還調用了其它服務,也是分散式的,從而形成多級複雜嵌套。DTX是一個方法論級的保證,不管分多少級,只要層層提交成功了,最終就都能成功提交。”尹博學介紹。DTX本身帶有即時監控,可以監控即時的事務資訊,包括事務數、成功率、平均耗時等,也可以與鏈路監控相結合,根據DTX上報的即時資訊,提供歷史趨勢圖、同比/環比分析、報警等功能。

這樣的DTX就能夠保證每年的雙十一支付峰值。2017年的支付峰值25.6萬筆/秒,相當於200萬個分支事務,也就是這200萬分支事務都要達到最終一致狀態。在峰值的那幾秒鐘,DTX每秒鐘要維護200萬分支子事務,監控它們的狀態運行,要保證達到最終的一致性;如果200萬個分支事務裡面發現不一致,就要快速處理。支付寶雙十一大促的交易筆數和峰值每年都在以驚人速度大幅增長,螞蟻金服所面臨的極端技術挑戰——如何支撐如此大規模交易並保證一致性問題,在全球範圍來看都不曾有企業實現過。

如今,整個DTX團隊規模並不算大,那又是怎麼實現25.6萬筆/秒的世界級工程呢?

在阿裡集團工作了8年的郎曉東(花名:冰魂)介紹:極致工程主要是靠非同步化來實現,也就是延遲提交。在延遲提交的情況下,資料還是對的,不阻礙交易流程,這就叫非同步化。也就是說,在極限峰值的情況下,支付寶能向淘寶的請求發出Confirm,保證雖然現在沒執行但5分鐘之後一定會執行,那麼淘寶就可以放心地告訴用戶購買成功了。因為雙十一大促的最高峰值通常持續時間不長,那麼在洪峰之後,稍有喘息就可以釋放IT資源來處理“蓄洪”那部分操作。“非同步只是在極限情況下採用,雙十一零點一過,又是同步了。非同步主要是針對成本,如果多加幾倍的機器,也可以做到同步,但用戶體驗要同成本效益達到最佳平衡,又要保證資金安全,因此就開發出了非同步的模式。”郎曉東表示,非同步模式讓DTX具有極強的可擴展性,交易量翻多少倍都可以支援。

當然,處理200萬個分支事務/秒的峰值,在搜索等其它非互聯網金融領域也是有互聯網公司能達到這樣的規模,但是要求的嚴格性不一樣。尹博學介紹,協調參與方多的時候,出錯的概率就高,一般架構的網站對嚴格性的要求並不強,資料不一致也問題不大,或者資料最終達到一致性但時間較長也無所謂。但螞蟻金服屬於金融業務,就必須要在高性能、低成本的前提下達到資料的強一致。

用軟體保證強一致

“總結螞蟻金服DTX在工程上的卓越性:首先就是能處理支付峰值200萬分支事務;其次是大規模互聯網分散式架構;第三,在資料分佈設計上採用了抵近存儲,也就是讓資料靠近業務,再通過批量技術來處理,以減少交互開銷、提升整體吞吐性。最重要的就是DTX是通過軟體實現分散式,保證處理能力的線性與水準擴展,沒有單點、消除單點。”尹博學強調。

所謂用軟體實現分散式,即不依賴底層的硬體,預設底層的硬體隨時會掛掉。而對於DTX來說,還是在最高的業務層實現的強一致,這就意味著甚至預設底層的資料庫也可以隨時掛掉。

早年間,淘寶還採用的是Oracle資料庫、MySQL開來源資料,後來又開發出了自研資料庫OceanBase。OceanBase(以下簡稱OB)金融級分散式關係型數據庫也是螞蟻金服的“黑科技”之一,讓使用者像使用單機資料庫一樣方便的使用OB,同時提供更高的性能與更好的服務穩定性等。

DTX的強一致與OB的強一致,有什麼區別呢?比如有一張用戶表,這張用戶表大到單機存不下,那麼就在OB裡存了兩台機器,例如是M1和M2兩台機器。一個事務既要操作M1上的一行資料,同時又要操作M2上的一行資料,那麼這個事務的一致性是由OB來保證。但在螞蟻金服架構裡還有一張更大用戶表,會被拆成25張用戶表,這25張用戶表中的每張可能“塞”到一個OB集群裡,從業務的角度要操作跨兩個OB集群的事務,這就是DTX來實現。

DTX主要定位於使用者視角的跨庫訪問,包括單服務、跨服務協調底層多存儲資源,支援多種底層資料庫,包括MySQL、Oracle、OB等。

對於DTX來說,這些下一層的資料庫,也被視為“硬體”。比如OB會認為磁片屬於比較慢的硬體系統,而DTX也同樣會極力優化下層資料操作的總體執行性能,因為要考慮到網路延時,這樣DTX就會把一次操作的多條SQL語句同時發給OB而不是順序發送,從而大幅提高單執行緒的處理能力。簡單理解,就是DTX作為處於最高業務層的強一致性方法,統領下面各層資源,在每一層都進行極致優化,從而達到整個DTX操作的最優化。“我們只能把軟體當成硬體來優化,一般的公司也不需要優化,因為也摳不到那麼細。”尹博學強調。

“沒有最大,只有更大”

在談到來螞蟻金服一年多的體驗,尹博學說這就是不斷突破對於“大”的認知。

“在螞蟻金服場景下,會突破對原有理論的認識,昇華到另一個境界。在這麼大的交易量下,很簡單的問題會變得很複雜。因為你沒有在這麼‘大’的場景下思考問題,你想當成認為理論就應該是這樣。但當遇到這麼大的交易量,會發現要考慮的很複雜。當你經歷過了這麼大的交易量,再用理論總結這個複雜問題時,發現它又會變得比較簡單。這是一個認識的深化,原來沒想到過這麼大的場景、這麼大交易量下的主要矛盾是什麼,發現了以後又變簡單了。”這是尹博學的感覺。

峰值達到每秒25.6萬筆、一天要生成幾十億筆交易的訂單號,這個“天量”已經突破了所有現有技術的極限,那麼解決“天量”規模背後的技術思想就是把同步事情變成提前做或延後做,“抓住這個思想,就會發現又變得簡單了,當然前提是要保證提前做或者延後做都是對的”。

DTX的對外輸出

如今,DTX技術在對外輸出的過程,又變得簡單了起來。張森(花名:紹輝)於2011年加入淘寶,於2015年轉到螞蟻金服,之後一直在中介軟體SOFA團隊,主要從事資料中介軟體分散式事務。

張森介紹,螞蟻金服的分散式事務有兩個名字:對內叫XTS,ExtendedTransaction Service可擴展事務服務;對外叫DTX,Distributed Transaction-eXtended分散式事務。2016年張森負責開發了分散式事務後臺運維的自動化,2017年分散式事務產品又開發了可託管版本:FMT,該模式主要是解決使用者接入和使用DTX的效率問題,讓用戶可以基本無侵入的方式下解決分散式事務問題。2018年螞蟻金服將推出第三代分散式事務解決方案,也就是XA(eXtended Architecture)模式,全面支援標準XA協定,覆蓋面廣,可無縫接入支援XA的資料庫、消息等,説明傳統業務上雲,並與自研資料庫OceanBase共同打造即時資料一致性的整體解決方案。

螞蟻金服的技術在2014年開始向生態夥伴和關聯機構輸出(比如網商銀行、天弘基金、Paytm等)。

在2017年,南京銀行成為了首個國內銀行機構客戶。在南京銀行互聯網金融平臺項目中,螞蟻金融級分散式架構解決方案作為一個整體輸出,而SOFA中介軟體包括DTX作為其中非常重要的一部分在項目中落地。2014年是螞蟻金融科技元年,為了更好的支持網商銀行的長遠發展,在架構設計初期網商銀行架構組就選型DTX做為分散式事務的解決方案。

總結DTX對外輸出的優勢:第一,相比競爭對手而言,DTX覆蓋的金融業務種類是最廣的,因為螞蟻金服是全金融場景,包括了支付、理財、銀行、保險等;第二,經過大流量檢驗過,成就了極致的工程實現;第三,理論發展較快,比如業界其它廠商還停留在TCC模式下,螞蟻金服已經針對雲上的新需求提出FMT、XA等模式,大幅度減少接入的複雜性,並能與螞蟻金服自研的分散式關係型數據庫OceanBase 共同打造即時資料一致性的整體解決方案;第四,金融級解決方案,通過專業的架構轉型諮詢和實施交付服務,使螞蟻金服沉澱多年的工程實踐精粹與行業落地能力能夠結合用戶自身的場景進行打通和賦能,為金融機構架構轉型帶來推動作用,同時也將開放場景定制化能力、大促保障等業務內容,為使用者進行量身定制打造最佳方案,為金融機構數位化轉型保駕護航。

回顧螞蟻金服SOFA DTX最近十年的發展過程,簡單講就是一個不斷求解金融場景超大規模交易量下分散式架構設計的問題及其工程實現,以優異的性能保障業務資料的一致性,支撐數億級用戶的資金操作。支付寶/螞蟻金服用十四年時間成就了8.7億全球用戶(2018年5月資料,包括支付寶及其全球合資夥伴)、小微企業與金融機構的普惠金融夢想。“為世界帶來更多平等的機會”,一個更加包容、更加可持續、更加綠色的數字金融——這才是螞蟻金服SOFA DTX分散式事務的黑科技之道。(文/寧川)

Next Article
喜欢就按个赞吧!!!
点击关闭提示