742
天貓
看懂“天貓雙11”支付技術的前世今生,就看懂新商業的變革基礎
參加溝通會前我們都很好奇,為什麼天貓雙11支付技術每年都被作為重點進行解讀?而這,是有門道的。
本文作者:溫曉樺
雷鋒網AI金融評論報道,今年的“天貓雙11支付技術溝通會”近日在杭州召開,螞蟻金服副總裁胡喜等出席了溝通會,並對天貓雙11支付技術進行了展示和解說。
過去兩年,圍繞天貓雙11,螞蟻金服對外強調較多的是支付保障能力,以及去年在消費金融場景下增加了很多新動作。而今年的情況是怎樣呢?與10月中旬剛結束不久的雲棲大會螞蟻金服ATEC金融科技開放峰會上的主題相唿應,除了“未問先答”這樣的智能客服黑科技,螞蟻金服副總裁胡喜再次強調了金融科技基礎技術升級。
參加溝通會前雷鋒網AI金融評論很好奇,為什麼天貓雙11支付技術每年都被作為重點進行解讀?而這,是有門道的。
“天貓雙11”支付技術的前世今生:從人肉雲計算到智能化雲平台
曾經,支付寶離數據庫崩潰隻剩四秒
不受控製的剁手帶來快感,也帶給技術男爆炸性的挑戰。
每年的“天貓雙11”都會創造不少世界紀錄,這些世界紀錄的背後是一個個世界級的挑戰。在過去9年的雙11,螞蟻金服都在挑戰自我中度過。
支付寶剛起步時,技術遠沒有今天那麼受重視,原因很簡單,不需要,沒必要。在創業之初,2004年時,支付寶還是淘寶中的一個結算部門,淘寶的會計人員用兩台電腦和一張 Excel 表就能進行結算。螞蟻金服向雷鋒網AI金融評論表示,那時每天的交易金額是三位數,全天交易筆數隻有十幾筆,如果分攤到每秒鍾,則接近於零。即便是到了2010 年,支付寶每秒鍾交易筆數也隻有300筆。
但是,2016 年的“天貓雙11”時,支付寶的交易峰值飆到了每秒 12 萬筆。
在此之前,支付寶也剛完成二代架構的升級改造。在二代架構做完之後,支付寶的技術團隊感覺能解決的技術問題都已經解決了很多人認為未來係統也許就可以這樣發展下去。
因此在 2010年雙11大促之前支付寶的係統規劃是按照每年增長100%餘量預估的。即係統永遠有一倍的餘量,按照當時的估測,大家覺得一倍餘量一定夠用。退一步說,即使出現問題,也可以等到交易量增長到一定程度時再繼續增加資源。
因此,當天突如其來的巨大交易量讓支付寶的技術團隊措手不及。
回憶起當年,2010年11月11日零點剛過,坐在電腦旁邊的程立(現任螞蟻金服首席技術官)突然發現,支付寶的業務量正在快速攀升,一下子高出了平時最高值的三倍。程立清楚,這時係統隻有一倍的餘量。
剛開始,程立有些僥幸,他覺得大促剛開始時用戶最活躍,等白天時情況會慢慢好轉起來。然而直到當天早上六七點,業務量還沒有降下來,依然是平時的幾倍。
這時,支付寶的技術人員開始著急了,大家意識到,當天的交易量一定會遠遠超出係統的容量。
情急之下,支付寶技術團隊開始不停地 “搬資源”。哪裏有富餘的計算資源就搬過來應急。如核心交易係統容量不足了,就把一些相對不重要的業務資源拿過來,到後來再不夠了,就采用“砍業務”的方法,將那些暫時可以犧牲的業務砍掉,再把資源搬過來。
那天,所有開發人員都坐在電腦前,如臨大敵般地處理問題: “到底這個機器是否要重啟一下? 這個係統容量不夠我要不要調一些機器過來? ”
直到當天的23時59分30秒,眼看2010年雙11大促就要結束,突然核心賬務係統報警。
“嘀、嘀、嘀” 短促清晰的警報聲讓在場的每個人都打了一個寒戰。
“資源馬上耗盡!趕緊殺掉非關鍵應用!”聽到報警聲後,負責數據庫的同事一邊衝過來一邊大喊。
程立倒吸一口冷氣,他清楚可能產生的後果。那時支付寶的賬務數據庫還沒有做拆分,而所有交易都經過虛擬賬戶,一旦核心賬目係統出現問題,支付寶所有的業務都會停掉,數據庫再想恢複就需要經過很長的時間。如果出現這種情況,對淘寶和支付寶都將是災難性的。
急中生智,技術團隊決定臨時把會計的應用殺掉。回憶起這個驚險的過程時,程立向雷鋒網表示,因為當時支付寶的賬務應用和會計應用是在一個數據庫中,而會計的應用更多,是在交易之後進行,暫時停用還可以恢複過來,這樣便可騰出係統的資源,把賬務係統的性能提升50%。
情急之下,負責消息係統的幾個同學衝上去,爭分奪秒地在每台機器上敲上一行行的代碼,緊急殺掉非關鍵應用,確保核心數據庫資源。
當敲完最後一行代碼,將一個會計係統的應用殺掉,將資源釋放出來,離數據庫崩潰隻剩下四秒。
盡管過程很驚險,不過,2010 年的 天貓雙11,支付寶全天成功交易1261萬筆,平均每分鍾有1萬筆成功交易。但經過了這次 “大考” 之後,所有人都在反思,以後每年的 雙11 大促,業務量的增長隻會更快,支付寶的係統怎樣才能頂得住呢?
事後複盤,當時支付寶的CTO李靜明在和技術團隊總結時說,對於 2010 年的 雙11整個團隊都是在做 “人肉的雲計算”,而係統接下來的改造方向就是使“人肉的雲計算”。真正變成“底層係統的雲計算”,這正是支付寶係統的第三代架構“雲支付”的開始。
金融業係統架構的突破:構建分布式係統
螞蟻金服介紹,從 2005 年開始,支付寶的技術架構經曆了“煙囪型”、“麵向服務型”、 “雲平台型”三個時期。而從第二代架構到第三代架構轉變,螞蟻金服又做對了一件事——構建分布式係統。這是今天“雲支付”的基礎。
當時,分布式係統在互聯網界的應用並不罕見,規模較大的互聯網公司係統都分布化了。但是對於金融係統而言,分布化是沒有先例的,這是因為金融係統要求高穩定性和高安全性,任何改進都要先保證用戶賬目上的錢分毫不差,在係統數據分離之後,保證係統之間業務處理的一致性就成了核心的問題。
“但是,如果使用雲計算,係統首先要分布,隻有這樣才能用很多小型機器、雲資源作為支撐。”
“支付寶的第一代架構就像一個個獨立的“煙囪”,沒有基礎架構可言,做一個業務就豎起一個“煙囪”。“煙囪”之間的關聯性不大,每做一個新業務就要將一個煙囪,進行手動改造,而支持主要業務的“大煙囪” 經曆了無數次的改動。
應該說第一代“煙囪型”的係統較好地滿足了小團隊開發、業務快速試錯的需求。但是這個架構不能支持大團隊的分布式研發。在“煙囪型”的技術架構下,每當開發新的產品和功能時,隻能允許所有人在一個係統裏去寫代碼。與此同時,它的部署也是集中的,核心係統就是一個集群,數據庫也隻有一個。因此,隨著業務量的上升,這樣的數據庫和集群都會達到極限。
所以,據雷鋒網了解,從2006 年開始,支付寶的技術團隊意識到,“煙囪”架構無法支持支付寶未來業務的發展。如果要繼續拓展業務,必須先把架構分布化,建立底層服務架構,讓專業模塊做專業的事情。
2007年初,隨著分布式係統技術的逐漸成熟,特別是大規模 SOA 係統中的分布式事務處理標準逐漸明晰。程立就和同事一起,從 2007 年上半年開始準備將支付寶的係統做分布式的改造,現在看來就是把支付寶的架構改成一個分布式服務和分布式架構。
二代架構在支付寶技術發展過程中是很關鍵的一步。因為新係統將原來的大係統拆開了,在當時這個項目叫作 “交易服務化”,有“交易服務化” 作為基礎,後來支付寶又做了賬務三期,做完賬務三期之後,核心賬務係統也分布化了。從 2007 年開始,支付寶陸續用了三年左右的時間對整個係統進行分布化。核心賬務可以分布、核心交易也可以分布、所有的業務都可以分開來做。
結果是,支付寶的係統可以伸縮了,每一個係統都是分布式的,如果遇到業務峰值,就可以增加資源。
幸運的是,當支付寶的二代架構做完後不久,淘寶就開始搞雙11 大促了。
但二代架構過渡到三代架構的過程並非一帆風順。在二代架構完成後,雖然支付寶把係統拆開了,但是如何讓新業務長在複雜的分布式係統上是一個非常複雜的問題。在業務很多的情況下,係統會變成一張複雜的網。
後來,支付寶技術團隊對業務進行了拆分和梳理。比如,係統裏有一個支付服務的平台,它的作用是對外提供支付服務。類似地,各類會員服務的係統、運營服務的係統與營銷服務的係統也都陸續搭建。
總的來說,第三代雲支付架構能夠完成兩方麵的改造。一方麵是在底層使用雲計算技術,另一方麵是在上層把服務變成雲服務。這樣建立在其上的業務就可以很快地生長。
據雷鋒網AI金融評論了解,從二代架構過渡到三代架構這個過程,支付寶又花了三年時間。用程立的話說,如果這個事情做得晚一點,這幾年的 “天貓雙11”大促就別想挺過來了。也正是這樣的轉變,讓支付寶技術團隊在天貓雙11之夜,不用再喝紅牛了。
不過,螞蟻金服對此並不滿足,現在已經開始研發第四代架構。
從分布式到異地多活
對於支付寶技術來說,2010年是一個拐點,那一年,峰值比此前番了三番。“如果還是用傳統型架構,很難滿足我們快速的發展,我們分析了整個業界的架構,支付寶遇到的問題,已經不是任何一個現有業界技術可以解決的,我們必須自己去淌出一條解決之道。”胡喜說道。
“在此前一年,我們開始自主研發數據庫OceanBase。我們也試著嚐試一種新的對策——分布式‘異地多活’的架構。”
這種分布式的架構有一個最核心的設計前提:用最通用的硬件設備(PC服務器),滿足我們最小單元計算的要求;用最縝密的軟件邏輯,滿足金融交易的最高可靠性要求。
胡喜表示,
這就像是拆掉了高端中央收銀台,換成了分散在商場各個角落的無數小型計算器,每台計算器雖然不如單一中央收銀台高端厲害,但個個都能記點帳,更重要的是,有一種統籌全局的力量為分散在各處的計算器設計了相互關聯的邏輯關係,它們互為補充,互相備份,從全局上保證了運算可靠,因而任何單個計算器的故障,都不會影響整盤生意。這就是這種架構中最核心的雲計算能力。
這種努力的成果是顯著的,在滿足支付寶係統同樣穩定的前提下,極大的降低了對於成本的投入。“從2010年開始,我們給自己定的目標是,每年專為雙11提供技術保障投入的成本比前一年都降30~50%左右,到2019年,我們將不再花一分錢投到雙11當天的技術保障上,也就是說,雙11將完全常態化。”
據胡喜介紹,“彈性架構具備在雲計算平台上快速伸縮容量的能力,50%流量基於雲計算資源彈性伸縮,快速擴充支付容量,從而優化運維成本。理論上我們可以做到每秒百萬級的交易支付能力。”
結論:雲計算是金融科技實現金融普惠的基礎
“天貓雙11”應急技術常態化意味著什麼呢?如果說上述的一切升級都是針對於雙11的挑戰性環境,那麼,對於一般性行業來說這些技術改進有什麼意義?
“金融科技下一版本模型分為四層模型,最下麵就是最基礎的能力我們叫做BASIC,B代表的是區塊鏈,A代表的是AI,S代表的是安全,I代表的是IoT,C代表的是雲計算,我今天講的很多都是在雲計算領域。Cloud是最基礎的能力,我們先具備這個能力,你沒有強大的計算資源,其他一切都無法進行。”胡喜向雷鋒網AI金融評論表示,“未來,螞蟻向前走的願景是普惠金融,需要服務更多的消費者和小微企業,需要的計算能力是非常大的,我們要做的就是通過‘雙11’把計算能力逐漸鍛煉出來。其他基層分別是風控能力,信用能力,連接能力。”
螞蟻金服是目前世界上體量最大的科技金融公司之一,每一步探索都有實驗性質。從支付的視角看螞蟻金服2007年到2013年的三代係統架構變遷,我們也看到了雲計算時代“雲平台型”係統架構的逐步成型;除此之外,從分布式架構、異地多活,也看到了國內金融機構基礎設施“去IOE”的轉向。
服務的智能升級
因此,遵循這個邏輯我們也可以回顧一下:去年,螞蟻金服對於天貓雙11突出了風控、精準營銷等消費金融方麵的實力(請看《備戰雙11,螞蟻金服準備了這些“重型武器”》)。與此同時,我們也看見了在過去的一年中,螞蟻金服逐步開放出來的信用評分服務以及風控服務能力。
也就是說,基礎技術的爆炸升級,背後也是服務能力的升級。
智能客服“未問先答”:開啟主動型客戶服務模式
走訪了一圈螞蟻金服Z空間大樓,這裏有平日辛勤的淘寶小二。不過,這個杭州服務團隊,隻有600人左右規模;算上全國外包團隊,不過小數千人。而且,螞蟻金服智能客服負責人子孟說道:“淘寶天貓平台業務量逐年增長,但是,我們的客服沒有增加,反而在減少。”
這背後,也是一個技術的進步史。
子孟介紹道,客服分三個階段:
1.0 查詢問答:類目樹
更多是查詢類的事情,把很多回答的內容做成一個類目數讓大家查詢,不管在熱線電話還是在PC端、APP端,更多讓大家自己去查詢,導致了大家效率很低,往往找不到準確的答案。
2.0 快捷應答:終端機器問答快速識別
第二階段,尤其是互聯網企業往往采用第二個手段,包括我們也在很多場景下切換到這個情況,就是在傳統的查詢回答的基礎上,快捷應答。
有兩個點:一是更多在APP端、PC端用問答機器人方式解決用戶問題,通過用戶問題可以快速識別什麼問題,快速指向到某一個具體答案或者人工;二是在傳統的電話過程當中,傳統用很多按鍵模式,但是新一代服務模式去按鍵化,減少按鍵輸入,更多用語音交互方式。
3.0 未問先答:機器學習模型識別支付場景,預判問題
很多時候我們客服的角色是相對滯後的,要等用戶找上門來提出問題,甚至反複不斷提出要求才能夠回應,我們認為極致服務應該是把事情做到事前,在用戶可能遇到問題的時候提前化解他的障礙和疑問。
所以到了第三階段,由於前一階段積累了很多數據和用戶行為的數據,我們現在希望推出的叫做“未問先答”服務。
在所有服務渠道中,我們不斷依據於用戶的實時數據,經過學習和分析,怎樣讓用戶沒有開口的時候就知道他可能想問什麼問題,更快速的解決問題,這是“未問先答”這樣一個技術在整個服務中的角色。我們希望這個是作為客戶服務3.0的標誌性的新客服產品和能力。
大家可以感受一下:
此外,未問先答還有其他的功能,舉個例子,用戶在app上反複操作在研究一個功能,但是多步操作後還沒有成功,那麼客服就會自動跳出來,詢問是否在某些方麵遇到困難,然後給出方案幫助客戶解決。
據介紹,經過這樣的提前介入服務,在這個節點上有一半以上用戶成功修改銀行卡的預留手機,可見,智能化的客服對業務效率的提升效果。子孟介紹稱,這樣的主動性客戶服務,每幫助一個用戶消除疑慮,就可以增加產品的剁手率。另一方麵,上了“未問先答”後,客服重複來電降低減少一半,通過95188來電谘詢的比例也減少了一半。
“客服的改進看起來雖然隻是一個細節,但它讓客戶服務完成從被動型服務到主動型服務的改變。”
為海量交易保駕護航
超級會計師OceanBase
上述貼心聰明的智能小二可能給你增加了足夠的剁手快感,而支付寶背後的數據庫係統更重要的是安全感。
首先,前麵已經有介紹,螞蟻金服通過開發的OceanBase數據庫係統,以及升級係統架構,采用三地五中心、異地多活等形式來提升容災能力,保障係統穩健。最後的結果是,胡喜介紹稱,天貓雙11中:核心的交易、支付、會員、賬務等支付核心鏈路今年都運行在OceanBase上;另一個是螞蟻自主研發的新一代彈性架構,能夠利用全國多個城市的雲計算資源。“所以,12萬筆/秒的支付峰值,是2015年的1.4倍,也毫無壓力。”
通俗的說,OceanBase是一個海量數據庫,可以存放千億條以上的記錄。它就像一位超級會計師,單台普通的服務器每秒可以處理百萬筆事務,平均一次花的時間是毫秒級別。
三地五中心,主庫突發故障,或者任何一個甚至兩個機房同時斷電、斷網,或者任何一個城市故障,業務都會在極短時間內自動恢複,不需要任何形式的人工對賬。
金融級反欺詐圖數據庫
而另一方麵,來自全國12萬筆每秒的交易量,當中有多少的欺詐安全隱患呢?
據介紹,除了OB,螞蟻技術團隊還自主研發了一個叫GEABASE(以下簡稱GB)的金融級圖數據庫。“圖”,指網絡關係的意思。它能從百億個節點、千億條邊(關係)的海量數據規模中,在幾十毫秒內徹查目標對象的多跳資金轉移關係、設備關聯關係等組成的複雜網絡,從而迅速鎖定目標、識別欺詐。
刷單黨、羊毛黨黨、欺詐、花唄套現黨等行為,都依靠這張網絡來識別。
結語
回顧過去,不難發現,有了天貓雙11,然後才有後來支付寶在信用、風控、營銷、客服等推動新零售的能力開放。過去一年,也才是新零售、新商業概念真正破曉起航。
那麼,再看未來呢?技術創造場景,AI、雲計算等技術將繼續驅動怎樣的商業和社會發展,以及行業變革,將是留與大家書寫的空間。
雷鋒網文章,轉載請至雷鋒網官網申請。歡迎評論區討論~
最後更新:2017-10-30 13:09:52