Rails 的 High Traffic 負載度 博客分类: performance RailsRubySocialWebPHP
程序员文章站
2024-03-05 07:58:36
...
看了對岸的 《程序员》10期特别策划:Web开发之华山论剑裡面的評論,裡面有一段(原文為簡體,我直接翻譯成繁體)
我列一下一些用 Ruby on Rails 的高 traffic 站台。我之所以用 Alexa 的原因是因為我不可能拿到下面站台的 Traffic 營運資料,所以我只能使用看似不是很準的 Alexa 來比較。
最後,當網站負載度到達一定程度,任何語言都不能可能承擔這樣的流量,所以網站的負載度還是看彼此的架構好壞,不是取決於語言本身,絕對沒有一個站台只靠 PHP 或是 CGI 就可處理所有Request 的。語言或是框架對於乘載度的差別在於『轉換高流量負載架構的彈性』,這點 Ruby on Rails 作的真的不差。
PS. Measure Map 是用 Ruby on Rails 寫的,已經被 Google 買下來。
如果你打算用 Rails 給自己寫個 Blog 或是小型的 Web 2.0 應用很合適,比如 37 Signal 開發的 Basecamp.com 和 Robot Co-op 開發的 43Things.com 採用 Rails,這些Web2.0 的小應用每天頁面訪問幾十萬,數據庫紀錄數不到百萬,負載是比較輕的。看完真是無言,43Things 最好 Traffic 那麼少,根據 Alexa 的數據,43Things.com 的 Daily Reach 每天大約是 600 Million 。雖然 Alexa 的數據準確性有很多人質疑(我是很質疑這個數字啦),不過這個流量數要硬說成只有幾十萬也差太多了吧。
我列一下一些用 Ruby on Rails 的高 traffic 站台。我之所以用 Alexa 的原因是因為我不可能拿到下面站台的 Traffic 營運資料,所以我只能使用看似不是很準的 Alexa 來比較。
- A List Part:Alexa 上面的數字最高衝到 1500 Million Day Reach ,已經是流量很不錯的站台了,Daily Reach 今年一度到達國內 Webs TV 網站的一半。
- Penny Arcade:Alexa 800 Million Daily Reach,數字是蕃薯藤新聞的兩倍。
- 43Things.com:今年上半年 Daily Reach 跟 A List Part 差不多,Alexa 數字是 600 Million Daily Reach,依照比例大概比蕃薯藤新聞多了一點Daily Reach。
- Odeo.com:這個站依照 Alexa 大概也跟蕃薯藤新聞差不多,不過少了一點。他是 Podcast 聲音檔案的網站,頻寬的消耗度是相當可怕。(雖然 Ruby on Rails 的覆載度跟 Handle 頻寬的能力,沒有直接關係XD)
- jobster:一個找工作的 Social Network,平常上去的人不多,只有一二月跟八九月特別多人(找工作的旺季),流量大的時候跟現在的樂多差不多流量。
-
Basecamp:讓 Ruby on Rails 誕生的指標性網站, Daily Reach 大致上跟 Odeo.com 差不多。我有使用過一段時間,他的權限系統相當的複雜,不用 Ruby on Rails 那麼簡單的東西寫會很難寫。
- Eins.de:雖然比他流量大的網站還很多,但是 procs.net 在這篇文章有特別講到他的架構。軟體使用純 Open Source 的架構,硬體使用光華商場叫的到的貨色,一天可以服務 1.2 Million 動態網頁。對 Ruby on Rails 的高覆載度有問題嗎,這篇文章可以打破你的疑惑。
- Hemidemi:我所知道國內第一個 Ruby on Rails 網站,站長是我學長 XD,這一兩個月成長開始爆發。
- JaveEye:我最常舉的例子,根據通过JavaEye2.0网站看ruby on rails性能這篇的說法,JavaEye 只用到一台光華商場買的到的機器,也就是 Web Server ,DB Server ,Mail Server ,Search Server 都在同一台。純 Open Source 的架構,一天處理個 50 萬應該沒問題。
最後,當網站負載度到達一定程度,任何語言都不能可能承擔這樣的流量,所以網站的負載度還是看彼此的架構好壞,不是取決於語言本身,絕對沒有一個站台只靠 PHP 或是 CGI 就可處理所有Request 的。語言或是框架對於乘載度的差別在於『轉換高流量負載架構的彈性』,這點 Ruby on Rails 作的真的不差。
PS. Measure Map 是用 Ruby on Rails 寫的,已經被 Google 買下來。
下一篇: PHP获取指定日期是星期几的实现方法