我正在使用Closure客户端和Tornado服务器端。我创建了一个套接字:
this.socket = goog.net.WebSocket(true)
然后打开它:
this.socket.open(theSocketUrl)
每个工作正常,包括正确传递的消息。但是,每分钟一次(每60到61秒一次),插座关闭然后重新打开。服务器端没有错误,并且不会调用Closure套接字错误事件。
我已经添加了针对龙卷风的日志记录,似乎正在调用on_connection_close(),然后调用socket的方法on_close()。 close()方法本身不会被调用。
知道为什么会这样吗?
答案 0 :(得分:3)
您是否在龙卷风服务器前使用nginx或其他反向代理?我已经看到当代理超时过去然后nginx关闭连接时会发生这种情况,导致你看到的行为。
您可以更改nginx中的proxy_send_timeout
和proxy_read_timeout
以防止这种情况发生。只需确保在修改proxy.conf
时,您可以在主nginx.conf
中添加它。