Tornado WebSocket每分钟关闭一次

时间:2013-05-02 16:20:57

标签: websocket tornado google-closure

我正在使用Closure客户端和Tornado服务器端。我创建了一个套接字:

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

然后打开它:

this.socket.open(theSocketUrl)

每个工作正常,包括正确传递的消息。但是,每分钟一次(每60到61秒一次),插座关闭然后重新打开。服务器端没有错误,并且不会调用Closure套接字错误事件。

我已经添加了针对龙卷风的日志记录,似乎正在调用on_connection_close(),然后调用socket的方法on_close()。 close()方法本身不会被调用。

知道为什么会这样吗?

1 个答案:

答案 0 :(得分:3)

您是否在龙卷风服务器前使用nginx或其他反向代理?我已经看到当代理超时过去然后nginx关闭连接时会发生这种情况,导致你看到的行为。

您可以更改nginx中的proxy_send_timeoutproxy_read_timeout以防止这种情况发生。只需确保在修改proxy.conf时,您可以在主nginx.conf中添加它。