配置 Resilience4J 熔断器
章节总结
入门
Resilience4J 实现提供了两个启动器,一个用于响应式应用,另一个用于非响应式应用。
默认配置
要为所有断路器提供默认配置,请创建一个自定义器(Customizer)Bean,该Bean接收一个Resilience4JCircuitBreakerFactory或ReactiveResilience4JCircuitBreakerFactory。可以使用configureDefault方法来提供默认配置。
Specific Circuit Breaker Configuration
与提供默认配置类似,您可以创建一个Customizer bean,该bean接收一个Resilience4JCircuitBreakerFactory或ReactiveResilience4JCircuitBreakerFactory。
熔断器属性配置
您可以在应用程序的配置属性文件中配置 CircuitBreaker 和 TimeLimiter 的配置或实例。属性配置的优先级高于 Java Customizer 配置。
Bulkhead pattern supporting
如果类路径中存在 resilience4j-bulkhead,Spring Cloud CircuitBreaker 将使用 Resilience4j 舱壁包装所有方法。您可以通过将 spring.cloud.circuitbreaker.bulkhead.resilience4j.enabled 设置为 false 来禁用 Resilience4j 舱壁。
Specific Bulkhead Configuration
与证明默认的'Bulkhead'或'ThreadPoolBulkhead'配置类似,您可以创建一个 Customizer bean,该 bean 接收一个 Resilience4jBulkheadProvider。
Bulkhead Properties Configuration
您可以在应用程序的配置属性文件中配置 ThreadPoolBulkhead 和 SemaphoreBulkhead 实例。属性配置的优先级高于 Java Customizer 配置。
收集指标
Spring Cloud Circuit Breaker Resilience4j 包含自动配置功能,只要类路径中存在正确的依赖项,即可设置指标收集。要启用指标收集,您必须包含 org.springframework.boot:spring-boot-starter-actuator 和 io.github.resilience4j:resilience4j-micrometer。有关存在这些依赖项时生成的指标的更多信息,请参阅 Resilience4j 文档。