来自 Netty API 文档
connectTimeoutMillis = "连接超时,以毫秒为单位。如果禁用,则为 0。"
和
ReadTimeoutHandler = 在特定时间段内未读取数据时引发 ReadTimeoutException。
从客户的角度来看,我对上述内容的解释是否正确?
客户端将尝试连接到主机直到“connectTimeoutMillis”。如果建立了连接,并且未将 ReadTimeoutHandler 添加到管道中,则 Channel 可以无限期地等待响应。如果将 ReadTimeoutHandler 添加到管道,则一旦 timeoutSeconds 过去,就会引发 ReadTimeoutException。
一般来说,我只想尝试连接到主机最多'x'秒,但如果通过网络发送请求,我想等待最多'y'秒的响应。如果它塑造/影响答案,则客户端是 Netty,但服务器不是。
跟进:ReadTimeoutHandler 上的 timeoutSeconds 是连续读取字节之间的超时,还是整个请求/响应的超时?示例:如果 timeoutSeconds 为 60,并且每 59 秒读取一个字节(总共 1024 个字节),那么整个响应会在 60416 秒内成功读取,还是会因为总经过时间超过 60 秒而失败?