從王博士說起
不知道為啥,最近幾天頻繁看到關于王博士的文章【編者注:比如王博士(一),王博士(二)】,便有了一些從王博士說起的思緒。認真說來,我與王博士不算熟悉,將來也不會有深入交流的機會。因此,這篇文章與其說是談王博士,不如說是以王博士為引子談一談云計算。
如果Google沒有搞錯的話,王博士是2008年加盟阿里的。在這之前,我對阿里的唯一印象,卻是下面的這一樁小事。
2007年5 月,阿里在杭州舉辦首屆中國網絡工程師俠客行大會。一位名為Andy的技術負責人與Sun公司ISV部門聯系,請Sun公司推薦一位Java領域的講師。當時我在Sun公司負責中國地區的開發者社區工作,這個任務幾經輾轉就落到了我的頭上。阿里方面的本意,大概是希望邀請到James Gosling前來參會,但是James Gosling在那個時間段已經有了別的安排。在公司的牛棚里頭轉了一圈之后,我向阿里推薦了Java EE團隊的杰出工程師(Distinguished Engineer)Mark Hapner,阿里方面欣然接受。但是Mark Hapner任職于沒有差旅預算的研發團隊,因此我向Andy的秘書詢問阿里方面是否可以解決Mark Hapner的往返機票和酒店費用。Andy的秘書回答說阿里方面可以安排酒店,但是機票需要Sun公司先買,然后再向阿里報銷。由于不需要Sun公司支付差旅費用,Mark Hapner就自己刷信用卡買了機票,從三藩飛到杭州做了個講座,第二天又飛回三藩上班。問題是我向Andy的秘書提起報銷Mark Hapner的機票費用時,小姑娘改口說是國際機票太貴只能為演講者報銷一半,剩下的一半需要演講者自理,以前往返郵件里面的白紙黑字做不得數了。又經過幾輪郵件溝通,干脆就再也不回郵件,連說過的一半也沒了下文。到了年底,我實在不好意思欠同事的人情,就自掏腰包通過PayPal把機票錢還給了Mark Hapner。
之所以提起這一陳年舊事,只是想幫助各位客官了解一個事實。如今阿里的技術團隊聲名遠揚如日中天,但是在王博士加盟阿里之前,阿里并不是一個尊重技術人才的公司。也正因為如此,沒有學過心理學的其他大牛(譬如傳說中的陸奇)在阿里根本沒有可能談到預期的薪水。王博士加盟阿里之后,在提高工程師地位和待遇方面做了很多工作。用吳翰清的一句話說,“王博士是唯一一個能把技術講得連馬云都能聽懂的人”。平心而論,在提高工程師地位和待遇這個事情上,很多技術VP都做了大量工作。不過,如果不是王博士能夠把技術講得連馬云都能聽懂,今天的阿里對技術人員的吸引力可能就會大打折扣。所以我建議阿里內部的工程師在批評王博士的時候,可以嘗試著用一下“雖然…但是…”這個句式。
據說王博士是打著云計算的旗號混進阿里的。在那個時間點上,“云計算”這個詞還沒有現在這般炙手可熱,并且通常用來指代類似于網格(使用N臺物理機虛擬出一個具有超級計算或者存儲能力的系統,用戶通過命令行或者Web界面向系統提交計算或者存儲任務)而不是類似于AWS(在單臺物理機上虛擬出N臺物理機,用戶通過命令行、API、或者Web界面獲得虛擬機資源)的系統。那時候AWS發布才兩年時間,在國內并沒有引起很大的反響。國內互聯網公司的系統團隊更關心的是類似于vCenter的數據中心虛擬化,而不是類似于AWS的自助服務模式(關于數據中心虛擬化和自助服務模式的區別,可以參考我在2012年10月寫的一篇博客《虛擬化、云計算、開放源代碼及其他》)。在國外,第一個提供類似AWS功能的軟件是閉源的Enomaly(2009年7月),然后是開源的Eucalyptus(2009年11月)。2010年上半年,王博士已經開始試圖在阿里內部推廣(并且遭到了頑強的抵抗)自己輪出來的后羿(也就是阿里云的前身)了。考慮到產品設計和研發的周期,可以推測出王博士啟動后羿項目的時機應該與Enomaly和Eucalyptus差不了多少。那時CloudStack和OpenNebula都還是單純的數據中心虛擬化管理軟件,而現在大名鼎鼎的OpenStack(起始于2010年7 月)還沒有生出來。單從這一點來看,王博士不僅不是在重復發明輪子,而是極具遠見和魄力了。
我所理解的遠見,或者說是方向感,大概就是模模糊糊地看到未來的一個縮影,但是并不清楚要達到那個境界需要經過哪些步驟。我們通常把在企業里面的人分為兩類,一類是戰略型(或者說務虛型)的,另外一類是戰術型(或者說務實型)的。這兩類人的共同特征是互相看不起,戰略型的人認為戰術型的人沒見識,戰術型的人覺得戰略型的人瞎扯淡。對于中小型公司來說,戰略型的人太多通常意味著一場災難。對于大型公司來說,戰略型的人則是一把雙刃劍 - 他有可能把公司給帶到溝里,也有可能讓公司實現第二次騰飛。王博士應該是一種典型的戰略型人才,他早早地看到了云計算在未來的重要性,并且預見到要把遠景變成現實道阻且長。吳翰清在博客里說:“我最佩服王博士的是無論他被外面的人、下面的人、其他BU的老大們罵的有多慘,鄙視的有多厲害,他總能不露聲色,該做什么就做什么,和我們聊天時還能跟沒事的人一樣。”這樣的人,才真真是能夠做大事的人。
但是光靠王博士一個戰略型人才絕對是做不成云計算的。王博士開始瘋狂地在阿里內部挖人,一直挖到兄弟部門怨聲載道,然后又“不設上限”地從外頭招人。我同意王博士一開始不應該招那么多微軟的人這樣的看法,因為微軟已經是一家美人遲暮型公司,培養出來的人大都是戰略型人才,和王博士是同一類型但是水平又遠遠沒有王博士那么高。從Google挖人的愿景很美好但是可行性較低,因為當時市場的薪資水平是微軟小于阿里小于Google,并且進得去Google的人看得起土豪的也不多。(插播一下廣告:章文嵩在2009年9月加盟淘寶,只能夠說是阿里撿到寶了。)在這樣的背景下,王博士早期的團隊缺乏高端的戰術型人才,走一些彎路也在所難免。但是到了今年,王博士早期的一些努力開始取得了初步的效果。其中一例,是去IOE的巨大成功;另外一例,則是聚石塔在今年的雙11中大顯身手。這兩個例子,其實都可以歸結為云計算理念的成功。王博士從今年9月起不再擔任阿里云總裁一職,未來專注于CTO一職。不過,如果現在就試圖去評價王博士對阿里云所起的作用的話,我個人覺得還是為時過早了。
目前我們所說的云計算,基本上就是以虛擬機的形式提供計算資源,誰需要計算資源的時候就買一個,不再需要的時候就把它殺掉。按需獲取,按量計費,節能減排,自主可控,安全高效,這些詞語市場和銷售人員都背的滾瓜爛熟,熟得讓人不敢相信這有可能是真的。但是我不僅認為這些口號都是真的,并且相信云計算的未來遠遠不止于此。我在《虛擬化、云計算、開放源代碼及其他》這篇博客里面提到了英國經濟學家威廉杰·文斯(Willian Jevons,1835-1882)在《煤礦問題》(The Coal Question)一書中指出的一個似乎自相矛盾的現象:蒸汽機效率方面的進步提高了煤的能源轉換率,能源轉換率的提高導致了能源價格降低,能源價格的降低又進一步導致了煤消費量的增加。這種現象稱為杰文斯悖論,其核心思想是資源利用率的提高導致價格降低,最終會增加資源的使用量。在過去150年當中,杰文斯悖論在主要的工業原料、交通、能源、食品工業等多個領域都得到了實證。我在這篇博客里面又進一步斷言:“公共云計算服務的核心價值,是將服務器、存儲、網絡等等硬件設備從自行采購的固定資產變成了按量計費的公共資源。虛擬化技術提高了計算資源的利用率,導致了計算資源價格的降低,最終會增加計算資源的使用量。”。
如果說云計算使得用戶可以象用電用水一樣使用計算資源,那么最終會達到什么效果呢?看一看我們平時用電用水的情況,哪些屬于剛性(必不可少的)需求,哪些屬于柔性(可有可無的)需求。很快你就會發現我們大部分的消費,其實應該歸類到柔性需求里面去。我們在房間里裝個漂亮的壁燈,不見得是因為沒有它就看不見路,而是因為點亮了之后我們變得心情愉快了。我們到游泳池去游泳,不見的是因為家里實在沒有地方洗澡。但是,你看看我們現在的云計算用戶。他們之所以使用云計算,是因為他們必須使用計算資源去做一些他們認為很重要的事情,他們不是僅僅想要高興一下就刷卡去買你的云主機。要想讓云計算象用電用水一樣,至少需要兩個前提條件:一是簡單,二是便宜。 我想在書桌上加一盞臺燈,不需要單獨跑到供電公司去簽一個合同。我在你這里買一個虛擬機,為什么需要我單獨下一個訂單呢?我買的臺燈想什么時候拆掉就什么時候拆掉,我買的虛擬機你為什么要按天、按星期、甚至是按月計費呢?很多做IDC出身的人會跟你扯什么合同,什么協議,什么ITIL,什么ETOM,你們家換個燈泡還要先跑去供電公司簽個合同嗎?
所以說,云計算是一場革命。這場革命既是服務提供商的,也是云資源用戶的。對于服務提供商來講,云計算不僅僅是將物理機換成虛擬機,更重要的是提供服務的方式和對服務計費的方式。對于云資源用戶來說,要理解虛擬機已經不是傳統意義上的服務器,并且學會如何去使用這一新形式的計算資源。想象一下這個場景吧:某個物理系的學生想要驗證一下關于宇宙起源的一個新想法,他隨手登錄進入某某云創建了1000臺虛擬機,用了半個小時之后又隨手殺掉所有的虛擬機。等什么時候人們不僅僅是因為剛性需求 - 而是因為柔性需求 - 而使用云計算的時候,云計算才能說是真的取得了成功。
所以我說,云計算是一個剛剛顯現的藍海。現在國內各家做公有云的公司殺得你死我活,看起來似乎已經是一片血海。在我看來,這些不過都是假象。現在如果阿里不往這個方向去努力,那才是真的錯過了時機。
另:本來還想再寫一些關于阿里云的具體的意見,但是考慮到這篇博客本來就是務虛,如果硬要加入一些務實的內容的話,反而不美。
又另:寫這篇博客,絕沒有在阿里謀求任何職位的意愿。作為一個半路出家的程序員,我深感自己在CS領域的先天不足已經阻礙了我在這個領域的繼續發展。因此,過完年之后我就要暫時離開中國,到悉尼大學攻讀第二個碩士學位,為期兩年。我在悉尼大學的導師是IEEE Fellow Albert Zomaya教授,我的研究內容包括開源社區、云計算經濟、云服務可靠度等等內容。