Add resilience4j-circuit-breaker: Resilience4j 2.4.0 vs Spring Framework 7 core, on Boot 4.1
Companion module for the rewritten post 'Resilience4j Circuit Breaker in Spring Boot 4.1: What It's Still For', reworked around Framework 7 now shipping @Retryable/@ConcurrencyLimit in core. Covers what's still Resilience4j's job (circuit breaker, rate limiter, bulkhead's bounded wait, fallback methods, Actuator/Micrometer metrics), the off-by-one between maxAttempts and maxRetries, and two Boot-4.1 build breaks: spring-boot-starter-aop no longer exists (renamed to spring-boot-starter-aspectj, proven with Maven Central metadata and the renamed starter's own POM -- see resilience/docs/08-starter-aop-renamed-to-starter-aspectj.md in this same repo), and the resulting fix uses that renamed starter directly rather than assembling spring-aop + aspectjweaver by hand. Kept as its own module rather than a new top-level repository, alongside the existing resilience/ module for the sibling Framework-7 post.
This commit is contained in:
@@ -0,0 +1,48 @@
|
||||
spring:
|
||||
application:
|
||||
name: resilience-boot4-demo
|
||||
|
||||
server:
|
||||
port: 8080
|
||||
|
||||
management:
|
||||
endpoints:
|
||||
web:
|
||||
exposure:
|
||||
include: health,metrics,circuitbreakers,circuitbreakerevents
|
||||
endpoint:
|
||||
health:
|
||||
show-details: always
|
||||
health:
|
||||
circuitbreakers:
|
||||
enabled: true
|
||||
|
||||
resilience4j:
|
||||
circuitbreaker:
|
||||
instances:
|
||||
paymentService:
|
||||
slidingWindowType: COUNT_BASED
|
||||
slidingWindowSize: 10
|
||||
minimumNumberOfCalls: 5
|
||||
failureRateThreshold: 50
|
||||
waitDurationInOpenState: 2s
|
||||
permittedNumberOfCallsInHalfOpenState: 2
|
||||
automaticTransitionFromOpenToHalfOpenEnabled: true
|
||||
recordExceptions:
|
||||
- com.ankurm.resilience.FlakyDownstream$DownstreamUnavailableException
|
||||
bulkhead:
|
||||
instances:
|
||||
slowOp:
|
||||
maxConcurrentCalls: 2
|
||||
maxWaitDuration: 100ms
|
||||
retry:
|
||||
instances:
|
||||
inventoryService:
|
||||
maxAttempts: 3
|
||||
waitDuration: 200ms
|
||||
enableExponentialBackoff: true
|
||||
exponentialBackoffMultiplier: 2
|
||||
|
||||
logging:
|
||||
level:
|
||||
com.ankurm.resilience: INFO
|
||||
Reference in New Issue
Block a user