close

【深度】解密阿裡巴巴的技術發展路徑

【深度】解密阿裡巴巴的技術發展路徑

2008年的一天,阿裡巴巴集團(下稱“阿裡”)開瞭一次內部會議。在這次當時看來很平常的會議上,明確瞭兩個議題:一,阿…

http://p.sootoo.com/son_media/msg/2014/07/17/637791.jpg


2008年的一天,阿裡巴巴集團(下稱“阿裡”)開瞭一次內部會議。在這次當時看來很平常的會議上,明確瞭兩個議題:一,阿裡是一傢數據公司;二,阿裡要把“計算”變成一種像水和電一樣的公共品。當時在中國還沒有人談“大數據”的概念;更沒有人想到雲計算會和一傢互聯網公司未來發展如此緊密。

1999年阿裡成立之初,創始人“十八羅漢”中就不乏技術基因。公開資料顯示,創始人之一吳泳銘1996年畢業於浙江工業大學計算機系,後成為支付寶的技術總監。盛一飛有多年用戶體驗設計經驗。周悅虹,java架構師,技術精湛,傳言是一名極客。

隨著淘寶網的成立,2003年阿裡開始與IBM合作,解決用戶、商品和消費信息分散的問題。當時的阿裡已經從十幾個人的小公司延展出很多新業務,技術系統也變得龐大復雜。到瞭2007年,阿裡在IT上的投入之大,一度成為IBM、Oracle等國外IT廠商在中國的標桿用戶。當年,阿裡首席數據庫管理員馮春培甚至受到瞭Oracle公司亞太區高級副總裁Brian

Mitchell親切接待,並被授予甲骨文全球第100個ACE(Oracle ACE 是指那些通過撰寫書籍、文章或博客,分享Oracle經驗的技術專傢)。

但實際上,這種甜蜜的合作關系並沒有持續太久。

2008年前後,阿裡業務高速發展使已有的IT設備使用到達瓶頸。根據時任支付寶數據庫架構師、現丁香園CTO馮大輝的描述:“在阿裡的IT架構中,淘寶和支付寶等擁有大量IBM小型機和Oracle數據庫,以及EMC、戴爾存儲設備。用戶激增與用戶產生的數據越來越多,每年早上8:00?9:30之間CPU(中央處理器)要保持98%的使用率。”IBM小型機價格從幾十萬到高達百萬級人民幣,與Oracle簽訂的數據庫軟件費用達數千萬,加之一大筆軟硬件支付和一大筆維護費,阿裡的技術發展進入一個壓力很大的時期。

緊迫之中,阿裡在尋找一名技術高管,要為龐大復雜的業務搭建起全新的技術架構,建立全球頂尖IT團隊。在2008年的這次內部會議上,阿裡確定瞭“數據”和“雲計算”兩個重要的新戰略。

時任阿裡巴巴首席架構師的王堅成為接受這個挑戰的不二人選。

“去IOE”念頭萌生

阿裡巴巴CTO王堅

加入阿裡巴巴之前,王堅任微軟亞洲研究院常務副院長;再之前,他是浙江大學心理學系教授、系主任。加盟阿裡後,王堅馬上著手第一個重要工作——籌劃集團全年的IT預算。他反復琢磨,發現一個重要問題:即便追加巨額IT投資,阿裡購買的軟硬件也未必能滿足其業務的高速增長。

“雙十一”大促對IT計算資源要求龐大,很難預測業務爆發點所需要的計算資源峰值。但過瞭高峰期,IT資源空下來,又會造成浪費。這些實實在在的難題是為阿裡提供軟硬件服務的廠商從沒遇到過的,IBM、Oracle和他們的客戶都不能為阿裡IT提供任何可供借鑒的經驗。其次,整個IT就像是一個黑箱子,一旦出現技術故障後,阿裡的技術團隊要打電話給廠商等待事故處理,而且高端存儲設備的性能數據都是由廠商掌控,阿裡自己的技術團隊並沒有太大的控制權。技術維護變成極其繁瑣的工作,支撐業務的效率大大下降。

而在地球的另一端,Google和Amazon是和阿裡台中月子中心比較業務相近,並值得學習的兩個好榜樣——Google是世界上少有的能擁有大規模分佈式架構技術的互聯網公司,Amazon是第一個將自己雲計算技術對外提供服務,實現營收的公司。

在一次預算討論中,阿裡巴巴集團負責技術保障的副總裁劉振飛和阿裡技術保障部DBA負責人周寶方偶然提到:“阿裡應該嘗試用PC技術替代小型機技術。”一聽這句話,王堅一下子激動起來:“既然已經思考瞭這個問題,為什麼我們不鄭重寫下來?明確阿裡再也不購買小型機。”

“去IOE”(在IT設備中去除IBM小機、Oracle數據庫及EMC存儲)由此得名。

在2009年到2013年整個“去IOE”的過程中,阿裡技術發展策略逐漸從“商業軟件”、“開源軟件”發展到自主技術和雲計算構成的綜合技術服務能力。便宜的Commodity

PC替換掉過去昂貴的硬件設備,淘寶、支付寶等重要業務將舊的“IOE”集中式架構轉變為分佈化架構,這種架構是把IT後臺遷移到雲計算平臺上的基礎工作。

在“去IOE”過程中,阿裡技術團隊也完成瞭一次成熟的轉型,這為阿裡向外提供雲服務打下瞭基礎。王堅來阿裡之前,阿裡各業務技術後臺是獨立運營的,他將阿裡運維團隊、平臺技術部、大淘寶運維團隊、雲計算運維團隊等整合到一起,成立瞭集團統一的IT技術保障部。阿裡旗下子業務模式差別巨大,IT工具和價值理念也完全不同,所以統一團隊經歷瞭很大的技術挑戰和組織挑戰。這項工作實際為後期阿裡雲向外提供服務打下瞭很好的基礎,阿裡後期推出的“聚石塔”、

“聚寶盆”業務,與這支在“去IOE”過程中鍛煉出的隊伍密不可分。

除瞭團隊,技術人員也面臨著個人轉型。王堅曾多次說:“‘去IOE’最難的就在於人。每一次的技術轉換,我們都是在革自己的命。如果沒有同事們當時敢於嘗試的勇氣,阿裡的技術難題都可能扛不過去。”曾有一位技藝精湛、對業務非常熟悉的淘寶數據庫管理員,在“去IOE”過程中,他從Oracle數據庫技術,轉到MySQL數據庫,最後去研發阿裡自有技術OceanBase數據庫。

技術的重新選擇讓阿裡最有價值的一批技術人才,隨時要面對熟練的技術突然沒有用的情況。曾參與IBM小機下線的技術人員樓方鑫曾說過這樣一段話:“去掉一兩個系統的IOE不是最難的,也不能代表成功;通過‘去IOE’提升和鍛煉團隊的能力,協調好運維和開發團隊間的工作才是關鍵。”

小機,再見!

阿裡巴巴最後一臺下線的IBM小機

淘寶是首先推行“去IOE”戰略的業務部門之一。“去IOE”之所以能從淘寶開始,是因為淘寶擁有阿裡最大的Oracle數據庫,成本和技術壓力最大。淘寶技術專傢餘鋒曾說:盡管Oracle數據庫性能穩定,但是對於淘寶來講,Oracle數據庫本身已經不能滿足業務需求。淘寶的數據庫專傢從IT前端逐漸過渡到後端,弱化Oracle數據庫,把“Oracle數據庫+IBM小型機+EMC存儲設備”切換到“MySQL數據庫+PC

Server的模式”。到2013台中月子中心親子房年7月10日,淘寶重中之重的廣告系統的Oracle數據庫全部下線。

2013年5月17日,阿裡集團最後一臺IBM小機在支付寶下線時也使阿裡“去IOE”運動越發受到關註。

在“去IOE”的進程中,支付寶首席架構師程立有自己的苦衷。支付寶有阿裡最後一臺IBM小機,這臺小機管理著支付寶用戶的所有資金。如果這臺小機出現故障,用戶將會無法支付,甚至台中產後照護推薦連自己賬戶裡有多少錢都看不到瞭,後果將不堪設想,因此對這臺小機的任何改動都要確保萬無一失。去除支付寶IBM小機的第二個難點在於,去除小機的前提是實現技術架構分佈化,為支付寶IT遷移到雲平臺打下基礎。但將技術架構從集中變成分佈後,很難保證強一致性,比如客戶A給客戶B轉瞭一筆錢,不能出現A的錢扣瞭,但B的錢沒增加的情況。如何在一個分佈的系統中保證交易處理的一致性是一個要攻克的技術難題。

“在王堅博士梳理整個阿裡技術架構的時候,支付寶曾經是他‘去IOE’最大的一個‘障礙’”程立向《商業價值》記者說道。“我們必須要保證每天處理的大量資金,一分錢都不能錯,一筆都不能差。”出於謹慎,程立和團隊在去掉支付寶系統中其它所有的IBM小型機後,還保留著這臺小機管理最重要的賬戶資金。”

時間回溯到2012的“雙十一”大促的凌晨,很多消費者不斷點擊支付按鈕,卻常常看到支付寶的排隊頁面。消費者以為支付寶系統崩潰瞭,實際上,當時是因為支付寶僅存的這臺小機的承載能力有限,在高峰交易期,系統隻能對來不及處理的請求進行排隊,這種排隊帶來的延遲產生瞭巨大的用戶體驗障礙。

“雙十一”的痛苦經歷,讓程立最後下定決心去掉這最後一臺小機,最終,支付寶技術團隊設計出瞭基於互聯網技術的分佈式交易處理方案,通過一次完美的項目執行去除瞭支付寶、同時也是阿裡的最後一臺IBM小機。

2013年的雙十一是程立經歷過的最輕松一次“大促”,再也不擔心有任何技術節點會制約業務的發展瞭。

一臺超級計算機

在阿裡進行“去IOE”同時,另外一項重要的技術研發也在同時上演。2008年10月24日,飛天研發啟動。“飛天”是什麼?飛天是阿裡的大規模分佈式系統,幾乎等同於整個阿裡雲的整個技術體系。

技術網站博客園對飛天——這種分佈式技術有一段生動的描述:當你隻有六七條魚的時候,

一個小型魚缸就夠瞭;可是過一段時間新生瞭30多條小魚,這個小缸顯然不夠大瞭。如果買一個大缸,把所有水草啊、佈景、加熱棒、溫度計都從小缸裡拿出來,重新佈置到大缸。這個工程要花費很多時間,尤其水草,糾結在一起很難分開。分佈式系統可以幫你在這個小缸旁邊接瞭一個同樣的小缸,兩個缸聯通。魚可以自動分散到兩個缸。幫你越過復雜的系統擴建過程,省掉瞭很多時間和設備成本。

阿裡舊的“IOE”架構,本質上代表著基於傳統高端設備、大型數據庫等軟硬件的集中式架構。陳舊集中的技術無法應對阿裡爆炸式業務增長,如果在IT系統中有一點出現問題,整個架構都面臨危險。飛天這種分佈式系統集中大量的通用服務器在一個系統中,比單個的大型集中式系統運行速度更快。而且,把計算能力分散到眾多機器上,單個節點的故障隻會影響一臺機器,其它機器可以照常工作。

2013年3月,阿裡技術保障部給公司高層突然發信一封:“雲梯1要撞墻瞭!”雲梯1是阿裡內部另一個基於Hadoop的分佈式集群系統。保障部的員工發現按照現有數據增量和未來業務增長的情況,阿裡的存儲和計算能力將在3個月內達到瓶頸,數據業務面臨停滯,必須將飛天系統快速擴建起來。

飛天的快速擴建要克服很多難題,國內有大規模分佈式系統經驗的人不多,阿裡的技術團隊裡隻有少數做過或用過分佈式系統,所以整個研發的過程是一個探索學習的過程,隻有遇到實際的問題,團隊才會對工程上的難題有所領悟。

其次,在系統設計的時候,工程師會設定相應的工作場景、硬件環境的完備性。但在實際生產環境下,各種硬件環境、參數配置,往往會打破設計時的假設,因此總是會碰到各種問題。在解決這些問題過程中積累的經驗,顯然不是教科書上可以學到的理論。這個超大計算機也有自己的軟肋,她要比單個服務器的可用性和可靠性要高很多,才能保證服務“永遠”不中斷,數據“永遠”不丟失。

經過4個月的不懈努力,飛天資深技術總監唐洪和他的團隊將5000臺飛天集群部署成功。阿裡成為國內首個單集群達到5000臺規模的公司,在此之前,全球也隻有Google、Facebook等頂級公司可以按照5000臺機器來劃分集群規模。

飛天能做什麼?用唐洪的話來說:“它有100PB級別的硬盤,可以存放幾百億的網頁;可以給幾十萬的用戶,每人提供幾百G的存儲;再或者是擁有瞭一臺萬核以上的超級計算機,普通計算機一個月需要完成的渲染作業在這個計算機上隻需要幾分鐘就可以完成。”

“雙十一”雲備戰

飛天資深技術總監唐洪

“去IOE”與“飛天5K”技術成功後,阿裡集團內部所有的重量級業務都已遷移到雲計算平臺上。

“聚石塔”、

“聚寶盆”、“阿裡金融”的大數據研發以及YunOS智能移動操作系統等,都運行在阿裡雲飛天平臺上。淘寶、支付寶等各業務部門的底層技術也架設在飛天平臺上。阿裡金融基於雲計算,幾分鐘之內就能讓貸款發出,每天處理上百TB的交易數據,而且保證瞭每一筆貸款發放的計算成本相同。淘寶也基於阿裡雲推出電商雲——聚石塔,為“雙十一”服務。阿裡雲推出電商雲—聚石塔,為“雙十一”服務。2012年“雙十一”,通過聚石塔,阿裡雲支撐瞭天貓20%的交易額,

2013年這一數字上升到75%。

2013年“雙十一”大戰前3個禮拜,天貓技術總監莊卓然接到集團通知:大促結束後,他將要被抽調到無線事業部。對他而言,3年的“雙十一”備戰完美收官,又將迎接新的挑戰。2013年,阿裡第5個“雙十一”,天貓和淘寶單日成交額達到362億元(根據招股書數據),網站PV過百億,76%的商傢處理工作在聚石塔雲計算平臺完成,且無一漏單,無一故障。支付寶成功支付1.88億筆,最高每2分鐘支付79萬筆。用莊卓然的話:“瘋狂業務數據的背後,是對阿裡技術團隊一次整體大閱兵。”這場閱兵檢驗瞭阿裡“去IOE”和雲計算的成果。

3年備戰“雙十一”,莊卓然每年都重復著高效的工作時間表。5月底,投入產品和技術準備。籌劃新的突破點和創意同時啟動,投入到一些較長周期的研發工作。8月底,真正的考驗來臨,沖刺時間段,他每晚習慣性要到兩點多才能睡著。有時候,想一些技術難題覺得有突破時,一睜眼就到天亮。莊卓然自己形容自己的工作狀態像“精神分裂”一樣,左腦思考的是系統的穩定性建設,右腦不停地找尋當前系統的命門和瓶頸。每一次大促都是對團隊技術能力的考驗。

2011年和2012年的“雙十一”前夜,莊卓然和技術團隊都非常不踏實,即便該做的技術準備都做瞭,但面對“雙十一”巨大的突發流量,隻能盡力保證一個完善的技術機制,抓大放小。“雙十一”的最大難點在於峰值流量一壓過來,系統要扛得住千萬人同時在線和每秒數億筆交易。

淘寶和天貓的技術體系非常龐雜。每一筆交易都涉及到銀行、商傢、淘寶自身和網絡等多個系統的處理能力。交易信息層層傳遞過程中,某一個技術細節執行不到位,交易就可能失敗。比如,當用戶量大到一定程度,系統讓用戶排隊,如果這個功能失效,一連串的上下遊系統都會受到影響。淘寶的幾萬臺機器,上千個應用系統復雜交錯,很難實景模擬所有的用戶行為,比如1000萬人同時在線,同時下單。2013年,莊卓然對“雙十一”技術的確定和把握,一部分來源於技術團隊已經能實現在短期內集結一大批虛擬用戶去做壓力測試;另一部分是淘寶天貓後臺和大多數商傢後臺已經上雲。

淘寶、天貓上大概近千萬傢商傢,其中大部分的商傢都有自己的ERP系統。消費者買一個東西需要點擊購買,然後進行支付。這個動作會指向兩條IT路徑:一是連接支付寶,保證有錢可以完成支付;另一條則是進入賣傢的ERP,賣傢需要知道自己是否有庫存,並減掉相應的貨品數量。交易從淘寶或天貓鏈接到賣傢後臺系統的過程中,如果賣傢IT系統薄弱,數據交換可能會因為網絡等原因不通暢導致交易失敗。

莊卓然詳細講解瞭這一過程:“聚石塔提供的雲推送功能在第一時間將交易訂單同步部署進商傢的ERP、物流、CRM軟件中,並提供動態彈性擴容和安全保護。消費者下單到發貨、發票打印,所有信息流轉都在雲上完成。”

雲上生態系統

阿裡雲業務總經理陳金培

天貓技術總監莊卓然

聚石塔隻是阿裡雲應用的一個側面,阿裡長在雲上的商業生態體系已經初步形成。

王堅曾說過:“阿裡雲平臺在內部的代碼就是飛天。一個平臺的力量有多大,可以造就的東西就有多大,這是過去阿裡雲為什麼花費這麼大力氣做飛天的原因。”飛天以Web

API的方式,向外提供計算、存儲和大規模數據台中月子會所處理等雲計算服務,建立起龐大的雲計算生態體系。

未來的互聯網將成為一個果園,各行各業像是一棵棵果樹,如何為果樹提供良好的養分服務,決定瞭果園生態的豐富程度。雲計算就是牽引傳統行業互聯網化的引擎。數據將成為雲生態裡的生產資料,通過強大的計算能力進行實時分析和交互,可以催生出無數新的商業模式。

在阿裡剛剛遞交的招股說明書中寫道:2013年1?9月,阿裡雲計算服務等收入達5.6億人民幣,占總收入的1.4%,同比增長15.7%,並且已經擁有98萬用戶。阿裡雲快速地將阿裡和不同行業企業聯系到一起,比如消費電子、公共衛生、能源管理、媒體、電子商務、電子政務、移動互聯網等。阿裡雲客戶中有傳統的互聯網公司,也有移動互聯網公司,比如手遊公司;還有一些傳統企業,比如杭州九陽股份有限公司,這些傳統企業的IT逐漸向雲遷徙。例如,2013年,阿裡與美的集團的深入合作,是基於天貓商城、大數據和阿裡雲計算平臺的多維度合作,這種借助雲和數據的能力,讓傳統企業能與互聯網走向更深的耦合。

阿裡雲還在借助ISV合作夥伴,幫助更多的傳統企業上雲。2013年,東軟將旗下SaCa、UniEAP等軟件產品部署在阿裡雲上;普元推出基於阿裡雲的EOS-Cloud平臺,直接在雲上支撐企業軟件開發。這些ISV廠商有大量傳統企業用戶積累,這種深入合作撬動瞭一批傳統企業上雲。2014年,5月8日,阿裡雲宣佈香港數據中心正式投入使用,阿裡雲正與Amazon

AWS、、微軟Azure展開正面競爭,阿裡的雲生態體系部署已經蔓延到國外。阿裡雲業務總經理陳金培認為:“所有的產業競爭都是生態系統的競爭,你要麼依存於一個生態,要麼自己發展出來一個生態。”馬雲搭建的基於數據和雲的生態,已初步形成。

2013年初開始,阿裡將其戰略調整為“平臺、金融、數據”三大業務。雲計算是金融、數據的基礎。2014年春,馬雲的內部信件再次明確瞭阿裡的未來戰略:走向激活生產力為目的的DT(data

technology)數據時代。馬雲的策略是讓數據、雲計算成為中國商業的基礎設施。(文/張宇婷)

阿裡巴巴的技術節奏台中產後護理中心推薦

2007年

以互聯網為平臺的商務管理軟件公司阿裡軟件成立。

2008年

王堅加盟阿裡成為集團首席架構師

阿裡巴巴集團研發院成立

飛天研發工作開始

2009年

阿裡軟件與阿裡巴巴集團研發院合並

阿裡雲計算成立,在杭州、北京、矽谷設研發中心和運營機構

Oracle產品構建的RAC集群成為國內最大的數據倉庫

淘寶擁有第一個分佈式計算系統Hadoop集群,規模300臺

2010年

阿裡雲第一個雲計算機房啟用

阿裡巴巴數據量大爆炸的一年,RAC集群不能滿足業務發展速度,遷移到Hadoop

2011年

阿裡雲官網上線,“飛天”開始對外提供雲服務

阿裡巴巴雲智能手機操作系統雲OS正式發佈

2012年

“冰火鳥”啟動建立支持集團數據化運營,自主研發的分佈式計算平臺對全集團提供服務

2013年

阿裡雲計算與萬網合並為新的阿裡雲計算公司

“飛天”集群達到5000臺,100T數據TearSort算法30分鐘完成,比當時的世界紀錄快2倍以上

2014年

阿裡雲發佈移動雲平臺-聚無線

香港數據中心正式啟用

台灣電動床工廠 電動床

台灣電動床工廠 電動床

AUGI SPORTS|重機車靴|重機車靴推薦|重機專用車靴|重機防摔鞋|重機防摔鞋推薦|重機防摔鞋

AUGI SPORTS|augisports|racing boots|urban boots|motorcycle boots

一川抽水肥清理行|台中抽水肥|台中市抽水肥|台中抽水肥推薦|台中抽水肥價格|台中水肥清運

arrow
arrow

    tqqu8hxpkw 發表在 痞客邦 留言(0) 人氣()