timeout documentation表示当客户端向负载均衡器发送数据时客户端收到错误。
When the connection is closed, your client application may receive the following error message: "The underlying connection was closed: A connection that was expected to be kept alive was closed by the server."
但是我们的 service-fabric 端点仍然打开已经超时的 TCP 套接字,即使现在已经超时了几天。
在应用超时后,客户端刚刚发送了 TCP CLOSE。
为什么负载均衡器没有通知 Service Fabric 节点 tcp 连接因超时而关闭?
服务结构节点上的 Windows 操作系统可以在超时无事件后关闭套接字吗?找到了TCP Keep-alive文档显示,我们的应用程序当前无法使用 tcp-keepalive 功能。
最佳答案
当 session 空闲超时时,负载均衡器不会发送 TCP RST。请使用 Service Fabric 研究如何管理此场景并启用 TCP keep-alive 发送。
关于sockets - Azure 负载均衡器在超时后保持服务器端的套接字打开,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44453399/