默认配置

为了为所有断路器提供默认配置,请创建一个定制器传递给 a 的豆子韧性4JCircuitBreakerFactory。ReactiveResilience4JCircuitBreakerFactory. 这configureDefault可以用来提供默认配置。spring-doc.cadn.net.cn

@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());
}

响应式示例

@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());
}

定制执行人服务

如果你想配置执行人服务这会执行断路器,你可以用韧性4JCircuitBreakerFactory。.spring-doc.cadn.net.cn

比如你想用上下文感知工具执行人服务你可以这样做。spring-doc.cadn.net.cn

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