我使用reslience4j隔板将活动线程数限制为我的一种服务方法。当线程限制超出配置时,应转到一种预料不到的后备方法。
但是,当验证失败时,作为方法中业务逻辑的一部分,我向用户发出了带有自定义消息的BadRequestException。当checkedException发生得太多时,这里的控件将转为一个后备方法。理想情况下,情况并非如此。
那么,我们是否有任何配置可以跳过对某些类型的Exception的回退方法的控制,类似于我们在Hystrix中的处理方式?
@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;
}
答案 0 :(得分:0)
只需使用其他fallbackMethod签名:
public void fallbackMethod(BulkheadFullException ex){
log.info("The number of concurrency limit exceeded");
return null;
}