我最近遇到了一个问题,即 TCP 服务器和客户端之间的中间链接已关闭。如果主服务器关闭,客户端需要连接到辅助服务器。当主服务器被买断时(例如 ..通过在终端上执行 ^C),TCP 关闭序列通过,客户端成功检测到断开的链接并尝试辅助服务器。但是,如果中间链接发生故障,客户端和服务器将不会意识到这一点。客户端可以检测到的唯一方法是它的 TCP 缓冲区何时被失败的“发送”操作填满。
作为对此的解决方案,使用了“TCP Keepalive”机制。这令人满意。
我的问题是“TCP Keepalive”是唯一的解决方案吗?
-帕布