阿里雲P10技術專家褚霸:我是一個程式設計師
在阿里內部有一個“拜霸爺神教”,不少 P8、P9 級技術專家都是其中的教眾,據說褚霸對計算機的瞭解到了庖丁解牛的地步。這樣一位 P10 級別的技術大牛,卻說:我是一個程式員。

褚霸,真名餘鋒,江湖人稱霸爺。現阿里雲彈性計算負責人,曾一手將資料庫團隊帶到國內雲資料庫頂尖水平。
褚霸身上標籤眾多,中國第一代技術網紅,軟硬兼修,是阿里雲備受外界關注的技術大牛。知乎網友對他有一句評價很經典:對於計算機的瞭解到了庖丁解牛的程度。
磁帶機和自建實驗室
上世紀八十年代初,中國社會對於科技發展的關注開始趨熱。
偶然一次,當時大約 7 歲的褚霸拆了家裡的磁帶機,結果裝不回去了,索性開始思考這個東西為什麼能發出聲音。從此他一發不可收拾,開始偷家裡錢買萬用表,電焊器,組建了一個小實驗室。
“我發現把交流電接到直流電機裡面去不會轉,但是裝四個二極體進去它就轉了。後來上大學學了電路原理,才明白為什麼。”少年褚霸成為了一名當時時髦的無線電愛好者,這對他的未來影響深遠。
“後來面對未知領域時,你有過去的一些經歷,其實你是不怕的。探索出規律,自然也就明白了道理。”褚霸說。
大學時期和病毒的故事
大學時期的褚霸是個潮男,留著長髮,還留著鬍子,甚至常常去美容院洗臉做面膜。褚霸的理論是成為校園名人需要“軟硬體結合”,形象是硬體,能力是軟體。某一天,他突發奇想,要做個病毒來顯示能力。
那是 1994 年,網際網路沒有普及,除了學校的 286 電腦,沒有其他任何資源。褚霸坐了很久的火車去省城,淘遍各大書店買回幾本關於計算機防毒的書,開始反推病毒怎麼寫。學徒階段,褚霸就常常把計算機弄宕機,最誇張的時候一天要重啟上百次。
臨近崩潰的他找到一個叫 RAMInit 的工具,可以用於清除記憶體的駐留程式。24 年後,褚霸還清晰記得這個小工具,長度是 4156 位元組,在它的二進位制檔案裡留有作者的簽名:Lei Jun(雷軍),沒錯,就是小米創始人雷軍。受此影響,後來褚霸也習慣在自己編譯出的二進位制檔案裡,留下簽名: “YuFeng is a good boy”。
技術大牛是怎樣煉成的?
剛投身網際網路的褚霸,覺得自己軟體能力相對欠缺。2001 年的某天,褚霸在網上發現了一個荷蘭人做的技術部落格,清晰具體地描述了 windows 程式的完整製作流程,每個示例還可以購買原始碼。於是辦了第一張信用卡,花了幾十美金買了一份 FTP 伺服器搭建的示例。
他開始背程式碼,一點點理解 FTP 怎麼接受事件,監聽,接受連結,協議處理……然後再自己擴充套件到其他協議,比如 POP3,SMTP 等等。
幾次購買後,這位博主就沒有再收錢。而這些教程讓褚霸著實琢磨了兩三年。“當時買的絕對是工業級的程式碼,所以我的起點很高”。褚霸非常感謝這位博主。
褚霸的技術突飛猛進,來到阿里後,褚霸負責的專案越來越複雜,他仍然堅持全鏈路思考的習慣,這讓他異常辛苦但是帶來了巨大收穫。
例如,當時的專案涉及到底層 IO(Input/Output) 技術。IO 技術涉及面非常廣,驅動,塊裝置,檔案系統,記憶體關係等等,每一個環節都要適配。
對這塊知識零起點的褚霸請教了當時核心組負責人伯鬆,伯鬆想了想說:我不知道你要多久,但是我有生之年能把它搞明白,就很不錯了。
這個回答讓褚霸備受打擊,但沒讓他退卻。褚霸進入了“魔怔狀態”,幾乎天天熬夜看程式碼,把 IO 核心棧所有引數都研究了一遍,然後反推背後的道理。整整 8 個月的堅持,褚霸搞定了 IO 這道難題,將當時淘寶的商品資料庫和交易資料庫全部遷移到 SQL/">MySQL 上,系統穩定執行。

Linux 之父 Linus Benedict Torvalds 與褚霸
從飛天到神龍,總是有新的挑戰
2012 年,中國雲端計算的攻堅戰“飛天 5K”打響。阿里巴巴集結了一批當時阿里集團內最優秀的工程師,投入到自研飛天系統當中,褚霸就是其中一員,負責當時飛天系統的女媧模組。
最終,“飛天 5K”成功了,標誌著阿里雲成為世界首家對外提供 5K 規模計算能力的雲端計算公司,褚霸也開始帶領阿里雲資料庫團隊 (RDS)。
資料庫每時每刻都在執行,對於穩定性要求非常高。從客戶的應用端訪問,到中間鏈路層,最後到底層的資料存取,每一個環節都不能出錯。
褚霸要求自己團隊的人,對於自己寫的程式碼,都要檢查三遍以上。“安全的問題需要從事前、事中、事後三個時間軸,以及儲存層、網路層、訪問層、應用層四個層面,立體化地構建解決方案。”褚霸說。
正是這樣的全鏈路思考和佈局,讓阿里雲資料庫產品線 3 年間由兩個產品增加到 18 個,市場規模增長了 50 多倍。
2017 年底,褚霸開始全面負責阿里雲彈性計算 (ECS),並帶領團隊研發下一代雲伺服器——神龍。

神龍雲伺服器元件
這是一個極有前景的專案,過去虛擬機器和物理機是水火不相容的,褚霸和他的團隊就是要解決這個問題,讓使用者在阿里雲“神龍”雲伺服器上既能享受到物理機的無損效能,又能靈活彈性使用計算資源。
這是雲端計算的一個全新領域,只有少數廠商在攻堅,褚霸帶領技術團隊已經攻克難關,取得了階段性的成果,下一步則是繼續挖掘“神龍”的潛力,讓更多使用者能用上新技術。
極致的程式人生

褚霸參加平昌冬奧會火炬接力
“上得了廳堂,下得了廚房”這是褚霸身邊同事對他的評價,無論是一行小程式碼中的 BUG 還是對未來趨勢的把控,褚霸都能在交流中幫助同事提升視野和格局。
有人說程式設計師把程式碼當成自己老婆般寵愛,有人說程式設計師寫程式碼時就像吃大餐般享受,但在褚霸看來,IT 男得有品味,只有這樣,他才能將產品做到極致。
“極致”貫穿了褚霸的程式人生,在他身上凝結了從一個優秀程式設計師到一個傑出程式設計師所需要的特質,不管是資料庫還是彈性計算,都要做到極致、做到業內第一。

褚霸喜歡騎行
所以他喜歡騎機車,在空曠無人的道路上,飆車;他愛看時尚雜誌;他帶著家人,走遍了三十幾個國家;一個人自駕 8000 公里,歷時半個月從杭州到西藏,經歷各種爆胎……
然而,團隊裡的這幫程式設計師,不太讓他省心。“霸爺霸爺,護照是什麼?”當團隊裡的一員這樣問他時,他說自己差點“吐血”。“他們除了寫程式碼,就沒有什麼業餘生活,比如有的人一年四季就穿公司發的文化衫;有的人沒有駕照,出門基本靠老婆;還有人連銀行卡都沒有……”褚霸的想法是,既要在工作上給他們足夠的自由,保持他們每個人的獨特性,又要“改善”他們的生活。
“讓他們知道生活不只有苟且和程式碼,還有遠方。”褚霸說。
對高階程式設計師的要求,不是精通某一門語言或者某一個平臺,而是工程能力/解決問題的能力。換言之,你應該針對專案提出解決方案,然後為解決方案尋求最好的工具,而這些工具可能是你用過的也有可能是沒用過的,如果沒用過,這不能成為你避開該工具的理由。如此說來,強調自己是“某語言程式設計師”將會過時,替代的說法是“全棧”。
web前端進階者加入: 731771211 由前端到全棧的進階學習與交流