求救!求助:reactor-netty always io.netty.channel.ConnectionTimeoutException
SOS HELP!! Ask for help: reactor-netty always io.netty.channel.ConnectionTimeoutException
我使用 spring 云解决方案构建我的应用程序,它们都是 Spring 启动应用程序,并使用 spring 云网关作为转发请求的 API 网关.
网关使用 reactor-netty 将 HTTP 请求转发给其他应用程序。
当我将我的应用程序部署到专业环境时,运行个应用程序在docker中,每个应用程序都有一个单独的docker容器,容器是一个Linux。然后我得到了很多io.netty.channel.ConnectionTimeoutException.
pro环境对tcp连接有一个特殊的limited,它会在240秒内未使用连接时终止TCP连接,甚至不发送通知。
我尝试使用 ConnectionProvider.newConnection()
而不是池提供者,以确保为每个转发请求创建一个新的连接,但 TimeoutException 仍然发生。不知道为什么,和240秒限制有没有关系
我用的是Spring云网关2.1.3.RELEASE,reactor-netty版本是0.8.12.
有人可以告诉我为什么以及如何解决这个问题。
pro环境使用NAT、ACS、SDN,不知道这几个词是什么意思,希望对这个问题有帮助!
非常感谢!
已解决。将 reactor-netty 升级到最新版本,并使用 maxIdleTime 参数创建 ConnectionProvider。但我仍然无法找出为什么 NewConnectionProvider 不起作用。
我使用 spring 云解决方案构建我的应用程序,它们都是 Spring 启动应用程序,并使用 spring 云网关作为转发请求的 API 网关.
网关使用 reactor-netty 将 HTTP 请求转发给其他应用程序。
当我将我的应用程序部署到专业环境时,运行个应用程序在docker中,每个应用程序都有一个单独的docker容器,容器是一个Linux。然后我得到了很多io.netty.channel.ConnectionTimeoutException.
pro环境对tcp连接有一个特殊的limited,它会在240秒内未使用连接时终止TCP连接,甚至不发送通知。
我尝试使用 ConnectionProvider.newConnection() 而不是池提供者,以确保为每个转发请求创建一个新的连接,但 TimeoutException 仍然发生。不知道为什么,和240秒限制有没有关系
我用的是Spring云网关2.1.3.RELEASE,reactor-netty版本是0.8.12.
有人可以告诉我为什么以及如何解决这个问题。
pro环境使用NAT、ACS、SDN,不知道这几个词是什么意思,希望对这个问题有帮助!
非常感谢!
已解决。将 reactor-netty 升级到最新版本,并使用 maxIdleTime 参数创建 ConnectionProvider。但我仍然无法找出为什么 NewConnectionProvider 不起作用。