字體:  

Facebook釋出網站伺服器Tornado原始碼

facebook 發表於: 2009-9-24 12:26 來源: ADJ網路控股集團


知名社交平臺Facebook釋出了一套即時網站伺服器Tornado的原始碼。這套用Python語言開發的網站伺服器,正是Facebook日前併購的FriendFeed網站所使用的網站伺服器。

Tornado和一般網站伺服器最大的不同是採取非攔阻式(non-blocking)的I/O架構,當網站伺服器執行一項程式要求的呼叫服務時,不會等待這次執行結果,就會繼續執行下一項程式的要求,產生立即傳輸資料的效果。就像是沒有高承載管制的高速公路,計程車不用載滿四個人就能上路,車行可以持續不斷地發車。

非攔阻式的架構適合提供資訊量簡短但發送頻率高的服務,例如微網誌服務Twitter,每則不超過140個字,但每分鐘要發送幾萬則訊息。FriendFeed正是利用這個特性,來提供各家微網誌內容的匯整和轉發服務。

根據Facebook發布的測試數據,在4核心AMD處理器的伺服器環境中,Tornado每秒能處理的網頁要求數量(Requests per Second),比Django網站伺服器還多了50%。目前Tornado只有提供Linux版本。