io.netty.channel.unix.Errors$NativeEceptionIoException: readAddress failed: 由对等请求重置的连接将被重试
io.netty.channel.unix.Errors$NativeEceptionIoException: readAddress failed: Connection reset by peer Request will be retried
我正在使用 webClinet 来使用 OAuth2 安全服务。当服务花费的时间超过默认超时时,我会收到错误消息并重试请求。
io.netty.channel.unix.Errors$NativeEceptionIoException: readAddress 失败: 连接被对端重置
连接发现错误,将重试请求。
这似乎是 netty 的 IO 异常问题。
在这种情况下如何避免重试?
这是我的网络客户端配置-
WebClient webclinet(OAuth2AuthorizedClientManager am){
ExchangeStrategies ex = ExchangeStrategies
.builder()
.codec(c-> c.defaultCodecs().maxInMemorySize(-1)).build();
ServletOAuth2AuthorizedClientExchangeFilterFunction oauth =
new ServletOAuth2AuthorizedClientExchangeFilterFunction(am);
SslContext ssl = new JdkSslContext(SSLContext.getDefault(),true,ClientAuth.REQUIRE);
ReactorClientHttpConnector clientHttpConnector = new ReactorClientHttpConnector(Http.create()
.secure(sslContextSpec-> sslContextSpec.sslContext(ssl)));
return WebClient.builder()
.exchangeStrategies(ex)
.clientConnector(clientHttpConnector)
.filter(oauth)
.build();
有一个名为 sslContextSpec.sslContext(ssl).disableRetry(true) 的 属性,可用于禁用它的重试功能。
我正在使用 webClinet 来使用 OAuth2 安全服务。当服务花费的时间超过默认超时时,我会收到错误消息并重试请求。
io.netty.channel.unix.Errors$NativeEceptionIoException: readAddress 失败: 连接被对端重置 连接发现错误,将重试请求。 这似乎是 netty 的 IO 异常问题。
在这种情况下如何避免重试?
这是我的网络客户端配置-
WebClient webclinet(OAuth2AuthorizedClientManager am){
ExchangeStrategies ex = ExchangeStrategies
.builder()
.codec(c-> c.defaultCodecs().maxInMemorySize(-1)).build();
ServletOAuth2AuthorizedClientExchangeFilterFunction oauth =
new ServletOAuth2AuthorizedClientExchangeFilterFunction(am);
SslContext ssl = new JdkSslContext(SSLContext.getDefault(),true,ClientAuth.REQUIRE);
ReactorClientHttpConnector clientHttpConnector = new ReactorClientHttpConnector(Http.create()
.secure(sslContextSpec-> sslContextSpec.sslContext(ssl)));
return WebClient.builder()
.exchangeStrategies(ex)
.clientConnector(clientHttpConnector)
.filter(oauth)
.build();
有一个名为 sslContextSpec.sslContext(ssl).disableRetry(true) 的 属性,可用于禁用它的重试功能。