Netty KeepAlive对于负载均衡器来说工作得太好了

问题描述:

我们有一个系统用一个嵌入式Netty服务器来处理REST请求。系统位于负载均衡器后面的三台机器上。Netty KeepAlive对于负载均衡器来说工作得太好了

我们连接到系统并且几乎连续发送请求。

问题是,连接永远保持活着,所以如果一台机器停机并恢复运行,它永远不会收到任何请求。

Apache有一个配置选项MaxKeepAliveRequests,它是一个连接中关闭连接并打开另一个连接之前的最大请求数。

在Netty中是否有等价物?还是我需要自己做这个?

你需要自己做。基本上,您只需在SimpleChannelInboundHandler或ChannelInboundHandlerAdapter中执行此操作,并在处理x请求后关闭连接。