0

我正在使用弹性 4j 库来实现 Spring Boot 的容错。我想在 application.yml 文件中维护弹性 4j 配置。

我想使用弹性 4j 注释,因为它有助于保持业务逻辑的整洁。

但是在注释不起作用的情况下(例如 AOP 不允许调用同一类的方法并且无法注释 Spring 数据存储库方法)我想使用函数式编程方法。

对于 application.yml 文件中给出的配置,我如何在我的 Spring boot 应用程序中创建 CircuitBreaker 和 Retry bean,以便在某些场景中使用高阶函数式编程来装饰调用,并在其他场景中使用注解。

我目前的配置:

resilience4j:
  retry:
    configs:
      default:
        max-retry-attempts: 3
        wait-duration: 5s
        retry-exception-predicate: com.example.resilience.predicate.RetryExceptionPredicate
        retry-exceptions:
          - java.io.IOException
          - java.util.concurrent.TimeoutException
    instances:
      ierp-test:
        base-config: default
4

1 回答 1

0

只需将 CircuitBreakerRegistry 注入您的 bean。

于 2020-05-20T16:03:10.743 回答