2012-03-08 60 views
2

我爲我公司的產品創建了一個網絡聊天服務,這是一個本地社交網絡,爲來自在線用戶的大量併發連接提供服務。長輪詢與Python中的Tornado一起使用。但是,當有很多不活動的長輪詢連接(不接收傳入消息)時,我應該關閉其中一些連接。我應該讓多輪詢連接保持多久?

我應該讓多輪詢連接保持多久? 1小時還是最多1天?

回答

2

你必須調整長查詢超時實際的網絡環境,例如一些ADSL調制解調器之後,比如說10分鐘無操作自動刪除連接。一些筆記本電腦可能會移動到另一個無線網絡或去睡覺,等

IMO你不應該有超過5分鐘的實用公衆使用的情況下在互聯網上。

如果您對網絡或對等方有控制權,您可以考慮更長的超時時間;或者如果您有獨立的驗證,客戶端仍在等待,例如通過來自同一會議的單獨請求。

當您分析工作負載時,您可能會發現,經過一定的閾值後,加倍超時會帶來非常小的性能提升。通常這個閾值會很小,然後使用它。

+0

當連接在超時之後被丟棄時,它會重新連接以再次調用長輪詢,對嗎?重點不是無限期地開放它,只是用一個新的連接來回收它? – raffian 2012-05-31 18:57:18

+0

究竟是............ – 2012-06-11 09:22:10

相關問題