我正在使用Netty 3.3.1。
我希望(1)中止在服务器端发送延迟响应,以及(2)拒绝来自客户端服务器的延迟响应。
我的工作流程如下。我从客户端发送请求,我希望服务器在30秒内响应。如果没有,我认为出了问题,我再次发送请求。 现在我担心客户会收到旧的回复,同时期待新的回复。我想检测一下(主要是在客户端,但如果服务器决定在30秒后不发送响应,那就太酷了。)
我可以使用Netty的IdleStateHandler / WriteTimeoutHandler / ReadTimeoutHandler吗?请注意,我不会断开频道,但会将其重新用于将来的请求/响应,并且当客户端通过同一频道重新发送请求时,不得在服务器上重置计时器。
我的第二个想法是为请求和回复添加时间戳。
OTOH,我复杂化了吗?甚至可以发生迟到的反应?答案 0 :(得分:1)
我认为处理这种问题的正确方法是使用某种“id”来查看它是否是“旧的”响应。