阿帕奇骆驼!配置负载平衡以尝试某些状态代码

时间:2019-07-04 08:25:15

标签: apache apache-camel

我已经在下面配置了故障转移负载均衡器。代码依赖于它从服务器获取的每个我不想要的错误。负载均衡器是否可以重试某些状态代码,例如422

from("direct:a")
        .routeId("id123")
        .streamCaching()

        .loadBalance()
        .failover(3, false, true)
        .to("netty4:http:http://localhost:3000")
        .end()

我知道我们可以对异常进行负载平衡。但是我想在状态码上做。

有什么可以帮助的吗?

1 个答案:

答案 0 :(得分:0)

这是不可能的,故障转移负载均衡器会根据异常工作。

您可以将netty4-http组件设置为在出错时不引发异常,然后自己检查状态代码,然后引发异常。

但是使用有效代码配置okStatusRange选项非常容易,然后您只会获得无效代码的例外。有关更多信息,请访问https://github.com/apache/camel/blob/master/components/camel-netty4-http/src/main/docs/netty4-http-component.adoc