2

我正在建立一个到 XMPP 服务器的 TCP 客户端套接字连接,并且需要一种可靠的方法来检测连接中断(例如服务器崩溃、重新启动等)。我在结尾、错误和关闭事件上附加了侦听器,但是当我在活动连接期间切断互联网连接时,它们不会可靠地触发。我的客户端如何检测到连接何时断开?我宁愿不诉诸ping/超时。

4

1 回答 1

4

我绝不是 TCP 或套接字编程方面的专家,但我很确定不存在“检测连接中断的可靠方法”。参见例如这个 Unix.com 线程

在节点中,您的选项似乎是socket.setTimeout / socket.on('timeout', callback)和/或socket.setKeepAlive

编辑:这是关于TCP keepalive的指南。

于 2012-04-23T22:28:29.837 回答