大型商業網站的基礎架構解析

         今天在西部在線羣裏碰到一個玩笑爭論,就是人工進行大數據量更新的問題。剛好也在考慮高併發量大型商業網站的技術和運營架構,暫且將一些思路寫下來,提醒自己,順便拋磚引玉了。有些數據,爲了更形象的說明問題,在絲毫不影響分析的前提下,做了取整。同時,爲了觀察和驗證分析結果是否準確,最後也參考了少許sina網站的公開商業數據。

        下面我就結合技術、商業、綜合成本等各類因素,貫穿行走,隨意展開,儘量展現一個大型資訊商業站的全部基礎架構。當然了,我得聲明,這僅僅是我的一個分析而已,一是比較粗劣,二是含有些許猜測的成分。呵呵,聊勝於無,大家權且湊合看吧……

        目前的大型商業網站,日訪問量都在數千萬,甚至數億頻次。一天共計是86400秒,1440分鐘;8小時則是28800秒,480分鐘。如果按秒計算平均值,日均千萬的平均訪問頻度是116人次/秒,平均一人打開3個連接,併發連接就是每秒350個;如果一天按8小時計算,平均訪問變成350人次/秒,併發連接就是每秒1040。這樣下來,其實對系統的負載壓力並不大,如果只是一般性圖文數據訪問,好點的PC Server就可以基本應付這樣的訪問。

        但在實際生活中,人們的訪問往往並不是按照我們的期望進行。就像公交車一樣,平常空空蕩蕩的,僅僅幾個人坐在車上,可是在早班和晚班以及週末時刻的高峯期,它就是那麼擠!!電梯系統也有類似特點。同樣的,這1000萬人次的訪問量,還就是集中在上午和傍晚那麼幾個小時裏。而訪問的高峯期,可能也就一個小時吧。這樣來看,按3小時共計約1萬秒計算,平均訪問頻度變成1000人次/秒,併發連接就是每秒3000個。在這個世界上有個統計性的經驗規律——二八原理,並且根據CNNIC的第20次報告來看,約70%的網民上網高峯期集中到了晚21點。當然了,這其中有鬥地主的、有看視頻的、有訪問網站的……那麼,我們可以這樣計算高峯期訪問量,可以近似的把網站的千萬訪問量取一半來覈算。一小時3600秒,那麼,高峯期的平均訪問量變成1390人次,併發連接爲每秒4000個;如果再按二八原理對高峯期的一小時進行統計分析,就可以把高峯期這一個小時的近似精準量算出來了。那麼取25%的時段900秒,取高峯期70%的量350萬來計算,這可能就接近於真實的訪問峯值了;計算結果爲3900人次/秒,併發連接每秒約11500。如果按照1M帶寬平均三人併發,最多4人併發來計算。這裏的一號結論可以出來了,日均訪問在千萬級大站的訪問峯值在4000人次/秒左右,併發連接超過10000/秒,總帶寬在2G左右。這個值好像和sina的訪問數據已經接近了。

        從商業角度來說,千萬級別的訪問量,首先是廣告價值,我們就假定爲資訊站作分析。本地晚報廣告一天的千人覆蓋價格約75元,烏市分衆傳媒一天的千人覆蓋價格約20元。由此也可以看出分衆傳媒發展如此之快的原因了吧,還是在於商業效率比報紙高啊。千萬級的網站,我們按10元千人覆蓋價格計算吧,非常有競爭力了;那麼光首頁廣告的價格一天也是100萬以上了。網站會有多少頁面那?千萬訪問級別的網站,頁面數量最少百萬級別吧,子頻道和專題最少近百個吧,平均一個頻道10萬訪問羣體,最後就按80個算吧。平均每個子頻道首頁全部廣告一天按5萬計算,那可是比報紙便宜多了,而且是全國性的站啊;這下來一天共計也得400萬。加上首頁和其他所有頁面,整個網站一天的廣告價值應該超過550萬,全年360天總收入爲19.8億。因爲並不是每天的業務都是這樣,有廣告熱季超出的,廣告低谷達不到的可能要多些,這樣除去高低對衝,再降低些,還是二八原理,取理論值的80%可能更接近實際——二號結論是,日均千萬級別訪問量大站一年的總營收應該超過15.8億。按網絡廣告行業普遍利潤率40%計,年度利潤約在6億。雖然我是以今天的數據來分析的,不過,不知道是不是真的很巧,sina2005年的年度營收就是15.8億。

         那麼,幾百萬的頁面,100個子頻道,需要多少人力呢。每個子頻道平均大約可以配置16人,採編外勤8人、高級編輯5人、美工2人、系統支持1人。這樣下來內容總計約1600人,平均薪資和費用按每月4000計算;內容團隊的年度費用超過7680萬。

        從技術上來看,4000人併發,2G帶寬,肯定得有自己的數據中心機房了,而且得掛到全國骨幹網絡節點上去。爲了整體系統的可靠運行,起碼在異地做個整體機房的備份。也就是同時運行兩個機房,不過另外一個機房帶寬可以不必太大。由於中國特色的網通、電信互聯不互通原因,達到訪問帶寬2G,就可能需要3G帶寬——2G電信、1G網通。爲了保證用戶的訪問體驗,那首先就是速度了,其次是穩定性,再次可能就是安全了。當帶寬足夠的時候,速度瓶頸就在於服務器處理數據的能力了;對於資訊站而言,緩存是個很好的解決方案。既然有如此大規模,當然不在乎小成本了;那麼,40萬一臺的千兆硬件緩存服務器和負載均衡設備就可以考慮了,穩定而且容易維護,花錢也是值得了。3個G帶寬,也就是3臺了,加上維護,按三年折舊率考慮,年均費用50萬吧。3G的專線光纖,大約500萬一年吧,備份機房按雙百兆算大約一年150萬吧。百萬級的網頁,積累上兩年,算1000萬個頁面吧,內容豐富度一般,加上各類廣告圖片,平均按300KB/頁面計算,純頁面數據的存儲空間就超過3個TB,每個用戶每天平均產生1KB數據,發個表情,評論幾句,千萬用戶一年將產出3.6TB數據,加上系統和未來容量考慮總計起碼10TB了。3G帶寬的滿負載的訪問速率,轉換成存儲接口速率,約380MB/s,目前的PC Server根本擋不住,也無法很好的共享數據啊,必須得用盤陣了。而且爲了提高不同數據類型用戶的訪問命中率,增加穩定性,主要是合理分割文字、圖片、郵件、用戶數據、少部分音視頻,可能得分成三個盤陣;加上備份盤陣,共計放6個盤陣,系統總容量放30個TB吧。這樣下來,包括光纖通道卡、光纖交換機、光纖硬盤和管理軟件等等,整個盤陣系統大概得200來萬,加上維護按三年折舊計算,年度費用約80萬了。這麼大規模的訪問量,服務器多半是採用集羣和負載均衡了。那麼,按照比較寬鬆的服務和高性價比原則,配置2U的3.0G雙CPU和4G內存的一臺高檔PC Server能同時接納100個用戶;按3秒的訪問持續時間計算,一臺服務器一小時能服務約12萬網絡用戶,爲了整體系統峯值冗餘,算10萬用戶吧。這下可以計算一下需要多少臺服務器了,按目前的配置,大概需要100臺高端PC Server,加上數據庫、應用、管理等不同類型的計算模式和區域分割,增加25%的數量計算吧,共計125臺。另外,可以參照我的另外一篇博文《電腦解惑——兼評軟件產業》;如果按5年前的配置,機器性能比現在低的多,平均按低10倍計吧,那5年前的機器數量可能超過1300臺。這麼大的商站,鑑於品質和價格的折中,多半是選用國產優質品牌的PC Server了,批量採購,一臺估計2萬左右吧,125臺共計250萬,按三年折舊計,年度費用約90萬。其他一些核心交換機、核心路由器、千兆防火牆,很可能採用華爲的設備了,加上DDOS防護設備、標準電信機櫃、不間斷電源、機房空調、機房佈線、監控等等,均採用在線雙備份,下來總計可能得900萬,按三年折舊計,年度費用約300萬。另外,商業電費按2元1度計吧,把所有機房設備均折算成共約150臺服務器覈算吧;每臺設備5小時一度電,年度總電費約50萬,好傢伙,不算不知道,一算嚇一條啊!要是換成5年前的1300臺,年度電費就是400多萬呢。難怪Google要把數據中心建設到電費比較便宜的北卡羅來納州去呢,它可是有45萬臺設備呢。

        最後看看運行的軟件配備情況。如果按微軟公司的軟件系統上,一套開發平臺得5萬,起碼得買個20套吧,共計100萬;10用戶的windows Server版1萬,10用戶單CPU MS SQL Server數據庫約2萬,最近好像出來個限制版本是免費的,但沒法子用在這麼大的站上啊;如果是不限定用戶數量、不限定CPU數量的數據中心版呢?即使批量採購,windows一套最少超過10萬吧,MS  SQL Server也起碼超過15萬了吧。125臺得花多少錢,超過3000萬,還沒算殺毒軟件和應用系統軟件呢,加上這些估計超過4000萬了。要是5年前的1300臺,天哪,得花3個億以上。由此看來,由於硬件性能的提升,導致Windows平臺的部署成本在急劇降低了。我說怎麼Windows服務器的市場份額好像增長還挺快啊。不過,既然人力成本是算過的;那麼,有了近似於免費的Linux和FreeBSD開源體系了,幹嗎還花冤枉錢呢?別跟我提D版windows平臺,這麼大站點,法律風險太大啦。Linux/FreeBSD+Ext3/UFS2+Apache+PHP/Python+MySQL/PostGreSQL+OpenSSL已經很成熟了啊!用它們管理幾十個TB的數據能輕鬆勝任。何況,人家開源的系統好像更安全、更穩定、更便於定製啊!這也是sina、yahoo用FreeBSD,Google、baidu用Linux的最大原因了吧……

        這樣算下來,採用開源軟件體系的機房加備份機房的運行費用,不計人力和意外,每年總計超過1200萬。

        而整個技術團隊的配備,根據這個系統的規模和特點粗劣估計,起碼編制在180人左右,分別是軟件研發25人、系統維護25人、數據庫20人、需求和架構25人、界面20人、測試50人、技術管理15人。既然是全國性的大型商站,所需要的人才也多半是頂尖級別的;那麼,技術團隊的平均薪資和花費定位在每月10000左右吧。這樣下來,技術團隊的年度費用是2160萬左右。

        當然了,商業網站的四個支撐點——技術、內容、營銷、運營,那是缺一不可的。但後二者具有更強的關聯性,權且放到一起統計了。

        營銷團隊的建設對整個盈利而言是個關鍵,這直接關係到現金能否匯流啊。而營銷人員往往是低工資高提成激勵性質。整個營銷團隊的普遍提成應該在薪資的4倍以上,而能拿到提成的人員數量應該放在40%左右的比例,那會更容易激勵整體團隊,多了和少了反而降低整體士氣,消磨營銷人員的積極性。

        作爲一個全國性大型商業網站而言,營銷團隊可以根據廣告市場來劃分大區管理。而70%的廣告市場都在東部,因此又可以將東部區域作爲市場重點。另外,也可以參考按城市人口數量和城市規模劃分重點市場管轄城市,建立渠道合作體系以及代理商體系。那麼,13個特大百萬人口城市可以每個城市放6個人;80個50萬人口大型城市可以每個城市放3人;30個省區每個省區放4人;加上主管,共計約450人。營銷團隊的平均薪資和花費定位在每月2500左右吧,但其中40%的人提成應該是薪資的4倍。這樣下來,整個營銷團隊的年度薪資總額爲1350萬,提成總額約2160萬,整個年度人力費用約3510萬。而對於整個營銷部門的推廣、宣傳、市場調查等營銷成本的支出,按經驗預計,起碼占人力成本的40%左右吧,這樣下來,年度營銷成本最少在1400萬了。

        最後時刻,可以看看整體的運營成本了。當然了,先得看看運營管理人員的數量配備。按一般規範公司的經驗配置,運營管理人員應該大致在12%左右。我們就按前面的人員數量倒推了。那麼,運管人員就應該在300人左右了。而運管人員的平均薪資和費用應該低於技術,而略高於其職務人員,定位在每月5000元吧。這樣下來,運管人員的年度人力費用約爲1800萬。當然了,有些重點骨幹是拿百萬年薪的,這樣的人蔘照總人員數量的1.6%吧,計約40人,年度總計4000萬。

       而行政運行費用,可以按標準人員消耗來估算,總人員數量約2500人。每個人無非是用電腦、電話、網絡、打印、差旅、福利、場所等等費用。品牌機的年度使用成本,加上軟件和辦公網絡大致爲1500元;電話月度人均費用可以放到100元、網絡費用可以總計爲百兆獨享的專線年度爲100萬、打印可以計爲人均每月100頁算上打印折舊和消耗每頁0.25元、差旅福利可以計人均年度1500元、年度人均水電和場所消耗約2500元、其他設施2000元。這樣下來,整體的行政運行費用,大致爲2350萬。

        另外呢,主要就是稅費了。廣告行業的稅率,營業稅本土按7%來計算,企業所得按新稅法報25%吧;那麼,15.8的收入繳納營業稅1.1億,6億的利潤,繳納企業所得稅1.5億,另外加上些行政性收費約3億吧。

        我們現在來看看年度成本彙算吧,取整計算。內容人員1600人,人力開支7700萬;技術人員180人,人力開支2200萬,系統設施開支1200萬;營銷人員450人,人力開支3500萬,營銷開支1400萬;運管300人,人力開支5800萬;企業行政開支2400萬;企業納稅和行政繳費3億;所有年度費用總計約5.5億。

        結論三出來了,一個日均訪問超過千萬級別的大型商業網站,人員數量應該數以千計,年度營收應該超過10億,利潤應該超過4億。

        按我的分析和估測,年度總營收超過15.8億,總成本5.5億,應該有10億的利潤,利潤率應該在60%了。可是行業通行的利潤率卻大部分顯示爲40%以內。即便我少算了些開支,也許技術團隊人員太少了,營銷開支太少了,加上稅率33%到新稅率25%的變化等等;不過也不至於差距這麼大啊。看來,裏面好像也是有文章了,我說好像除了聽阿里巴巴納稅比較多以外,怎麼就沒聽到其他大型商業站繳納多少稅款呢?不好說,說不好了啊!中國特色嗎!當然了,也不排除人家全用IBM高端設備、備用機房都建了四個,一半的人員拿年薪呢。畢竟我是在保證基礎品質的情況下,按比較節約的情況去做統計分析的。真實情況到底如何,只有大家自己思索了……
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章