一個大型網站需要多少伺服器?

以我知道的攜程為例子,攜程日均動態PV是3千萬左右。攜程一共有5個數據中心,6000多台伺服器,支持著1500個在線應用程序。

每宕機一秒鐘,攜程的損失是7000RMB。攜程期望把宕機率控制在0.05%,也就是平均一小時宕機1秒的水平。

即使在這種情況下,一年下來網站宕機造成的損失也高達5千萬人民幣。

只是對基礎架構有些好奇,一直想了解運營一個大型網站需要的硬體設施成本。

拋磚引玉了,歡迎其他同志分享下,比如百度、阿里這種。


還是拿StackExchange來說吧,當然業務不同沒法直接比,僅作參考。

Performance - Stack Exchange

560 Million每月,平均每天1800+w。

用了9 Web Servers,4 SQL Servers,2 Redis Servers,3 Tag Engine Servers,3 ElasticSearch Servers,2 HAProxy Servers,每台機器只用了10%左右的資源,其中也包含所有的容錯機。

看上去差距還是很大的,數量級的差距。當然StackExchange團隊的風格是把代碼性能優化到極致,不是一個普通團隊能做到的。不過就算考慮到這點,數量級的差距還是有點說不過去。


需要看業務複雜度的。

(1)非複雜交互流程的普通網站,例如新聞類的,因為交互簡單,即使PV非常大也不會要很多台機器。單台Nginx伺服器處理靜態頁面,可以達到幾千甚至幾萬QPS(當然這只是個理論值,算上頁面體積大小、寬頻等因素,通常達不到的)。

(2)交互複雜的系統,例如你上面說的攜程。複雜的用戶交互和存儲,支付流程和銀行等各種第三方交互,強保證系統穩定和容災。這些東西加上,就會讓機器的需求增加很多倍。

將系統剖析出來,對比業務複雜度,然後再對比機器數量才更有意義。

還有一點,機器配置也有好壞。新的伺服器性能可能幾倍甚至十倍於老機器,一點都不奇怪。


視訪問量和數據量來決定吧?大型網站雖然伺服器多,但是也不可能盲目增加,因為這裡面有成本和利潤的關係。不過當訪問量和數據量達到一定級別,升級超級伺服器的成本應該沒有購買普通伺服器組陣列來的划算。而且超級伺服器有配置極限。


百萬pv,獨立站點,目前三台


垃圾站百萬pv我一台伺服器也能搞呀。加點別的複雜應用百萬pv六七十台伺服器也正常。


人人網pv也是千萬級別,也是幾千台伺服器。還是看業務複雜度吧


推薦閱讀:

實時消息架構推送設計(Socket 實現)?

TAG:互聯網 | 伺服器 | 伺服器架構 |