根据客户端请求,Netty 服务器不调用 clientConnected/Register 或任何处理函数,导致套接字描述符泄漏

问题描述 投票:0回答:0

我是 Netty 和 Java 的新手。我面临间歇性问题。

我已经使用 Netty 创建了一个客户端服务器应用程序。 多个客户端在一段时间间隔后向服务器发送 Http 请求。服务器响应 200 OK。如果客户端在 10 秒内没有得到服务器的响应,它将断开当前连接并打开一个新连接并重试 HTTP 请求。

它按预期工作了几个小时,之后,服务器停止响应客户端。 结果,客户端每 10 秒打开一次新连接。客户端收到 SYN 请求的 SYN ACK。但是在 Netty 服务器端没有发生连接通道事件。

客户端向服务器发送不成功的 Http 请求后,从客户端关闭连接。

在服务器端连接进入 CLOSE_WAIT 状态并永远保持。这种行为一直持续到我们重新启动 Netty 服务器。

有什么方法可以确认Netty 已经收到Client 的Connection 请求?或者有什么方法可以在 clientConnected/Register 函数调用之前调试函数?

我已经尝试将调试日志添加到 Netty 服务器上的多个函数,但是像 clientConnected、exceptionCaught 这样的函数没有被调用,我没有得到我的踪迹。

java server netty connection-timeout
© www.soinside.com 2019 - 2024. All rights reserved.