Java resilience4j针对特定类型的异常跳过回退方法
我使用reslience4j将活动线程的数量限制为我的一种服务方法。当线程限制超过配置时,它应该转到正在按预期发生的回退方法 但是,当验证失败时,作为方法中业务逻辑的一部分,我会向消费者抛出带有自定义消息的BadRequestException。在这里,当checkedException发生得太理想时,控件将转到一个回退方法,情况不应该如此 那么,我们是否有任何配置可以在某些类型的异常上跳过控件转到回退方法,类似于我们在Hystrix中的配置Java resilience4j针对特定类型的异常跳过回退方法,java,resilience4j,Java,Resilience4j,我使用reslience4j将活动线程的数量限制为我的一种服务方法。当线程限制超过配置时,它应该转到正在按预期发生的回退方法 但是,当验证失败时,作为方法中业务逻辑的一部分,我会向消费者抛出带有自定义消息的BadRequestException。在这里,当checkedException发生得太理想时,控件将转到一个回退方法,情况不应该如此 那么,我们是否有任何配置可以在某些类型的异常上跳过控件转到回退方法,类似于我们在Hystrix中的配置 @Bulkhead(name="bhNam
@Bulkhead(name="bhName" fallbackMethod="fallbackMethod")
public void doSomething(){
//validatiion
// if validation succeeds
//do some business logic
// else if validation fails
throw BadRequestException("Error Message")
}
public void fallbackMethod(Exception ex){
log.info("The number of concurrency limit exceeded");
return null;
}
只需使用不同的回退方法签名:
public void fallbackMethod(BulkheadFullException ex){
log.info("The number of concurrency limit exceeded");
return null;
}
谢谢,这很有效