2013-05-02 86 views
6

我正在使用Closure客戶端和Tornado服務器端。我創建了一個插座:Tornado WebSocket每分鐘關閉一次

this.socket = goog.net.WebSocket(true) 

,然後打開它:

this.socket.open(theSocketUrl) 

每個工作正確傳遞罰款包括郵件。但是,每分鐘一次(每60到61秒一次),套接字關閉然後重新打開。服務器端沒有錯誤,並且Closure套接字錯誤事件沒有被調用。

我已經將日誌記錄添加到龍捲風,並且似乎正在調用on_connection_close(),然後調用套接字的方法on_close()。 close()方法本身不會被調用。

任何想法,爲什麼這可能會發生?

回答

3

您是否在龍捲風服務器前使用nginx或其他反向代理?當代理超時過去,然後nginx關閉連接時,我看到了這種情況,導致您看到的行爲。

您可以更改nginx中的proxy_send_timeoutproxy_read_timeout以防止出現這種情況。只要確保在編輯proxy.conf時,將其包含在主nginx.conf中。