由于 Netty 中的服务器端 ReadTimeoutHandler 不知道为什么客户端不写入任何数据,因此它可能会在服务器仍在准备对接收到的客户端请求的响应时抛出 ReadTimeoutException(即,在客户端根本不写任何东西的时间,因为它仍在等待服务器的回复)。
处理这种情况的最佳做法是什么?我目前正在考虑
- 在我的处理程序中保留一个标志,告诉服务器在准备响应时忽略读取超时,
- 在服务器准备响应时从管道中删除 ReadTimeoutHandler,然后重新添加它或
- 编写我自己的 ReadTimeoutHandler 版本,可以在每个通道的基础上打开和关闭。
是否有建议的方法在 Netty 中处理这个问题?