resilience-retry
SolidUse when adding retries, backoff, or concurrency protection to Spring Boot 3 / Spring Framework 6 services. Covers Spring Retry or Resilience4j selection, proxy behavior, and transaction limits.
AI & Automation 225 stars
37 forks Updated 6 days ago MIT
Install
Quality Score: 85/100
Stars 20%
Recency 20%
Frontmatter 20%
Documentation 15%
Issue Health 10%
License 10%
Description 5%
Skill Content
# Resilience and Retry (Boot 3)
Boot 3 does not have Spring Framework 7 core resilience annotations. Choose Spring Retry for
simple imperative retry or Resilience4j when you also need circuit breakers, rate limiting, or
bulkheads. Keep the dependency and configuration explicit.
```java
@Configuration
@EnableRetry
class RetryConfig { }
@Service
class PaymentClient {
@Retryable(
retryFor = ConnectException.class,
maxAttempts = 4,
backoff = @Backoff(delay = 200, multiplier = 2.0, maxDelay = 2000))
PaymentResult charge(ChargeRequest request) { ... }
@Recover
PaymentResult recover(ConnectException error, ChargeRequest request) { ... }
}
```
Spring Retry's `maxAttempts` includes the initial call. Resilience4j is preferable when retry
must be composed with a circuit breaker or bulkhead. Both approaches are proxy-based: self
invocation bypasses advice, and retrying a method inside a rollback-only transaction does not
create a fresh transaction for each attempt.
## Gotchas
- Agent uses Framework 7 `@EnableResilientMethods` - Boot 3 needs Spring Retry or Resilience4j.
- Agent confuses `maxAttempts` with retry count - Spring Retry includes the initial call.
- Agent adds `@Recover` to Resilience4j - recovery must be modeled with a fallback or caller handling.
- Agent retries a self-invoked method - call through a Spring proxy.
- Agent retries inside a transaction expecting a fresh transaction - move retry outside the transactional bean.
- Ag...
Details
- Author
- rrezartprebreza
- Repository
- rrezartprebreza/spring-boot-skills
- Created
- 4 months ago
- Last Updated
- 6 days ago
- Language
- Java
- License
- MIT
Integrates with
Similar Skills
Semantically similar based on skill content — not just same category
Testing & QA Listed
java-resilience
Use when the user asks to add resilience patterns, handle service failures, implement circuit breaker, retry, rate limiter, bulkhead, or timeout in a Spring Boot project using Resilience4J.
0 Updated today
limited-grisaille833 AI & Automation Listed
integration-resilience
Keep your service healthy when a dependency is slow or failing, through timeouts, retries, circuit breakers, and fallbacks. Use when an external call sits in a request path.
5 Updated 5 days ago
Amey-Thakur AI & Automation Listed
python-resilience
Python resilience patterns including automatic retries, exponential backoff, timeouts, and fault-tolerant decorators.
2 Updated 2 days ago
Jartan-LLC