spring-cloud / spring-cloud-circuitbreaker

Spring Cloud Circuit Breaker API and Implementations
Apache License 2.0
329 stars 110 forks source link

TimeLimiter timeoutDuration #92

Closed hsoftxl closed 3 years ago

hsoftxl commented 3 years ago

TimeLimiter timeoutDuration default 1s, and can not Customer

when run test case first time to call feignclient , large than 1s, so throw excetpion

java.util.concurrent.TimeoutException: TimeLimiter 'UNDEFINED' recorded a timeout exception. at java.base/java.util.concurrent.FutureTask.get(FutureTask.java:204) at io.github.resilience4j.timelimiter.internal.TimeLimiterImpl.lambda$decorateFutureSupplier$0(TimeLimiterImpl.java:46) at io.github.resilience4j.circuitbreaker.CircuitBreaker.lambda$decorateCallable$3(CircuitBreaker.java:171) at io.vavr.control.Try.of(Try.java:75) at org.springframework.cloud.circuitbreaker.resilience4j.Resilience4JCircuitBreaker.run(Resilience4JCircuitBreaker.java:75) at org.springframework.cloud.openfeign.FeignCircuitBreakerInvocationHandler.invoke(FeignCircuitBreakerInvocationHandler.java:91)

and code is use :

image

ryanjbaxter commented 3 years ago

You can configure the TimeLimiterConfig follow the example here https://docs.spring.io/spring-cloud-circuitbreaker/docs/2.0.0/reference/html/#default-configuration

hsoftxl commented 3 years ago

it works @ryanjbaxter