1.前期准备Maven以及Application.yml
①Maven:
主要需求为:
io.github.resilience4j resilience4j-spring-boot2 1.5.0②Application.yml
2.编写工具类
①展示CircuitBreaker相关状态。
②展示监听的熔断器事件。
3.编写需要被保护的Service
@CircuitBreaker(name = "backendA", fallbackMethod = "clientfallback")为熔断器的注解实现方式,name表示熔断器的名字,可以通过 CircuitBreakerConfig设置,也可以从application.yml读取配置,fallbackMethod表示服务降级后调用的方法。
fallbackMethod:在本次实例中有两个fallbackMethod,它会根据我们保护的Service产生了什么错误而触发不同的fallbackMethod。
4.编写调用Service的Controller类
通过工具类展示运行过程中CircuitBreaker的相关状态。
运行结果: