跳到主要内容

默认配置

DeepSeek V3 中英对照 Default Configuration

要为所有断路器提供默认配置,可以创建一个 Customizer bean,并将其传递给 Resilience4JCircuitBreakerFactoryReactiveResilience4JCircuitBreakerFactory。可以使用 configureDefault 方法来提供默认配置。

@Bean
public Customizer<Resilience4JCircuitBreakerFactory> defaultCustomizer() {
return factory -> factory.configureDefault(id -> new Resilience4JConfigBuilder(id)
.timeLimiterConfig(TimeLimiterConfig.custom().timeoutDuration(Duration.ofSeconds(4)).build())
.circuitBreakerConfig(CircuitBreakerConfig.ofDefaults())
.build());
}
java

响应式示例

@Bean
public Customizer<ReactiveResilience4JCircuitBreakerFactory> defaultCustomizer() {
return factory -> factory.configureDefault(id -> new Resilience4JConfigBuilder(id)
.circuitBreakerConfig(CircuitBreakerConfig.ofDefaults())
.timeLimiterConfig(TimeLimiterConfig.custom().timeoutDuration(Duration.ofSeconds(4)).build()).build());
}
java

自定义 ExecutorService

如果你想配置执行断路器的 ExecutorService,你可以使用 Resilience4JCircuitBreakerFactory 来实现。

例如,如果你想使用一个上下文感知的 ExecutorService,你可以执行以下操作。

@Bean
public Customizer<ReactiveResilience4JCircuitBreakerFactory> defaultCustomizer() {
return factory -> {
ContextAwareScheduledThreadPoolExecutor executor = ContextAwareScheduledThreadPoolExecutor.newScheduledThreadPool().corePoolSize(5)
.build();
factory.configureExecutorService(executor);
};
}
java