我已经在下面配置了故障转移负载均衡器。代码依赖于它从服务器获取的每个我不想要的错误。负载均衡器是否可以重试某些状态代码,例如422
from("direct:a")
.routeId("id123")
.streamCaching()
.loadBalance()
.failover(3, false, true)
.to("netty4:http:http://localhost:3000")
.end()
我知道我们可以对异常进行负载平衡。但是我想在状态码上做。
有什么可以帮助的吗?
答案 0 :(得分:0)
这是不可能的,故障转移负载均衡器会根据异常工作。
您可以将netty4-http组件设置为在出错时不引发异常,然后自己检查状态代码,然后引发异常。
但是使用有效代码配置okStatusRange
选项非常容易,然后您只会获得无效代码的例外。有关更多信息,请访问https://github.com/apache/camel/blob/master/components/camel-netty4-http/src/main/docs/netty4-http-component.adoc