Hotmail發(fā)展歷程回顧

嗨,我是迪克·克拉多克,是Windows Live Hotmail的集團項目經(jīng)理?!凹瘓F項目經(jīng)理”只是一種特別的說法,其實我負責(zé)管理Hotmail項目經(jīng)理的團隊。我們的工作是規(guī)劃每個Hotmail的版本,以及版本從開始到結(jié)束的投放管理。我們挑選出新功能,并且為這些功能寫出使用說明等。我們也制定時間表,并且與發(fā)展和測試團隊緊密合作,以確保軟件的按時上線,并是具有高質(zhì)量、高性能、安全性和可靠性的。既然這是Hotmail的幾個職位,那么我計劃,使未來數(shù)星期內(nèi),我想給你們提供一些關(guān)于Hotmail服務(wù)的背景知識——它是怎樣形成的,和多年來我們所經(jīng)歷的變化
歷史
Hotmail出生于1996年7月4日——是硅谷的一個由沙比爾·巴蒂亞和杰克·史密斯出資的公司創(chuàng)造了它。它是最早提供基于網(wǎng)絡(luò)的免費電子郵件服務(wù)公司之一。最初,Hotmail是拼寫為“HoTMaiL“的,強調(diào)的是其使用的HTML網(wǎng)頁的用戶界面。Hotmail的迅速流行起來,在1997年年底已有數(shù)百萬客戶。Hotmail在1997年被微軟收購,后來轉(zhuǎn)為基于網(wǎng)絡(luò)的日歷服務(wù),跳轉(zhuǎn)集成。Hotmail持續(xù)快增長——在短短幾年擁有上千萬用戶。今天,Hotmail服務(wù)已經(jīng)置備超過10億的收件箱和有世界各地幾億的活躍用戶。
自1996年以來,Hotmail服務(wù)經(jīng)歷了大量的變化。剛開始時的Hotmail,我們提供的是一個2MB儲存空間限制免費電子郵件。隨著時間的推移,我們不斷增加存儲到2GB和5GB。今天,我們提供不斷增長的存儲,這意味著你基本上不用再擔(dān)心存儲限制了。(為防止濫用,我們限制的增加總存儲的頻率,但是如果你合理地增加總存儲,就永遠不會超過限制。)其實,我們的一些客戶郵件收件箱容量遠遠大于10GBs。
當然,用戶界面也發(fā)生了相當顯著的變化。Hotmail是第一個提供安全創(chuàng)新服務(wù)的電子郵件服務(wù),如附件的病毒掃描。我們集成的日歷服務(wù),建在閱讀窗格中,并增加了規(guī)則,拼寫檢查,搜索,網(wǎng)路通訊,及其它更多服務(wù)。
但是,在過去的這么多年,我們也在軟件方面進行了許多巨大的改變,您可能看不到。我想談?wù)勱P(guān)于我們的軟件是如何建立的,以及我們多年來為了使我們的研發(fā)團隊提高效率,并將其他的Windows Live服務(wù)融入Hotmail和日歷服務(wù),利用各種更好的技術(shù)優(yōu)勢所做的事。
一個基本構(gòu)架的改變
在之前的博客帖子中,阿瑟·德哈恩給你們看了一個大致的Hotmail的內(nèi)部基本架構(gòu)。這個13年前由創(chuàng)始人設(shè)置的結(jié)構(gòu)設(shè)計的很好,讓Hotmail迅速地成長,但隨著時間的推移我們已經(jīng)做了巨大的變化和改進。雖然改變了許多,兩個有力的方案經(jīng)受住了時間的考驗,并有了很好的效果:
單位規(guī)模的建立——Hotmail服務(wù)是以“群”或單位規(guī)模建立的,讓我們的業(yè)務(wù)團隊,能在線以非常多的可預(yù)見的方式帶來一個子系統(tǒng)。這帶來了更高的可靠性和可擴展性,使我們能夠在世界各地找到各種數(shù)據(jù)中心的計算能力。每個群集有著數(shù)百萬用戶——我們有一百多集群,并定期添加新的集群。
單獨存放的計算——Hotmail系統(tǒng)有許多子系統(tǒng),但最重要的兩個系統(tǒng)是前端系統(tǒng)和后端系統(tǒng)。前端系統(tǒng)設(shè)置的服務(wù)器接外面的世界。這些服務(wù)器能讓您從單純的網(wǎng)頁格式看到并下載附件的,運行反病毒掃描等。后端系統(tǒng)是您的數(shù)據(jù)存儲。分離這兩個系統(tǒng)有兩個主要的好處。
第一個好處是,由于兩個系統(tǒng)之間的接口不經(jīng)常變動,我們團隊可以自由地同時操作用戶界面和存儲系統(tǒng)。因此,例如,我們2007年的版本,一隊建了一個閱讀窗格中的一個新的用戶界面和許多其他新功能,而另一組增加了幾個數(shù)量級的存儲限制。
第二個優(yōu)點是,我們可以獨立地擴大我們的系統(tǒng),使我們的硬件運行非常有效。換句話說,該前端硬件優(yōu)化了計算速度,而后端硬件優(yōu)化了存儲和I /O操作。
在飛機飛行的時候改變發(fā)動機引擎
隨時間的推移,Hotmail系統(tǒng)的基礎(chǔ)知識已有很大改變。在運行像Hotmail服務(wù)這樣一個巨大服務(wù)的挑戰(zhàn)之一是,當我們作出改變,我們必須確保我們能保持服務(wù)運行。這或許有點戲劇性,但我喜歡“在飛機飛行的時候改變發(fā)動機引擎”這一比喻!我們已經(jīng)變得非常善于利用這種變化,我們也可以做到經(jīng)常這樣實現(xiàn)。
兩個最大的已取得的工作是:(你猜對了)前端和后端子系統(tǒng)的變化。
從2004年開始, Hotmail的研發(fā)團隊完全改寫了后端系統(tǒng),使其脫離了昂貴和專用的Unix存儲系統(tǒng),開始使用Windows Server和SQL Server這樣的開發(fā)便宜,商品電腦和磁盤驅(qū)動器的系統(tǒng),以便我們能夠提供了比以往任何時候都更大的存儲空間給用戶。這些變化的范圍是巨大的——我們不得不實際改變數(shù)據(jù)中心的硬件到新的硬件上來運行新的軟件,我們必須擺脫舊體制中的數(shù)據(jù),而不影響對廣大客戶的服務(wù)。當然,這不是一朝一夕的事。這是一個復(fù)雜的項目,需要經(jīng)過多年努力,因為復(fù)制數(shù)據(jù)到新的磁盤驅(qū)動器有物理速度的限制。
最近,Hotmail升級為SQL服務(wù)器,拋開其他不說,這是一個能使我們大幅降低停機維修時間的最新版本。Hotmail是世界上最大的SQL Server部署,有成千上萬的電腦和數(shù)以萬計的SQL數(shù)據(jù)庫。
2005年,Hotmail的研發(fā)團隊進行了類似的重寫前端系統(tǒng),重建了Hotmail和日歷。舊的使用良好的軟件是用C ++和Perl語言寫的。但我們團隊知道,我們需要利用微軟其他團隊的新技術(shù)的優(yōu)勢重寫一個現(xiàn)代化,管理語言的服務(wù)。因此,整個前端被用C#和ASP.Net改寫,并充分利用Windows Server和IIS的最新版本帶入現(xiàn)代世界的Hotmail。這些變化使我們的研發(fā)團隊更有效,使我們能夠同所有其他的Windows Live產(chǎn)品和整個微軟團隊用一樣的代碼。
向前看
在過去的幾年里,Hotmail的團隊從基礎(chǔ)進行了重新設(shè)計,同時以驚人的速度增加Hotmail的服務(wù)。我們已經(jīng)做了巨大的投資,以獲得我們需要的軟件,我們希望它能給Windows Live提供強大的功能,高性能,高可靠性和高整合性。
下一步,我會談?wù)勎覀冊诨ヂ?lián)網(wǎng)上所做的困難工作之一:防止垃圾郵件。那時,我希望您能繼續(xù)使用Hotmail,并隨時給予我們反饋意見!
【編輯推薦】