awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
spring-projects avatar

spring-projects/spring-retry

0
View on GitHub↗
2,268 stars·532 forks·Java·9 views

Spring Retry

Spring Retry is a Java library that provides exception handling, automated operation reattempts, backoff strategies, and recovery mechanisms for application workflows. It handles transient operation failures through declarative annotations, programmatic templates, stateful context storage, and fallback recovery paths.

The library controls retry behavior by specifying attempt counts, timeouts, and inclusion or exclusion rules for specific exception types. It pauses execution between attempts using fixed, exponential, or randomized backoff intervals, and caches retry state outside the call stack to manage transactional resources and database rollbacks.

Telemetry integrations capture retry lifecycle events through listeners and expose execution metrics, performance timers, and failure counters. The framework also integrates with Spring Boot applications to configure automated retry logic and recovery handlers.

Features

  • Java Libraries - Provides a Java library for handling transient operation failures through automated reattempts and fallback paths.
  • Configurable Retry Engines - Applies automated retry logic and recovery handlers to application methods using annotations.
  • Exponential Backoff Retries - Pauses execution between attempts using fixed, exponential, or randomized intervals to give transient issues time to resolve.
  • Retry Libraries - Provides declarative and imperative retry operations with backoff delays and recovery handlers.
  • Exhausted Retry Fallbacks - Executes fallback processing paths automatically when all configured retry attempts fail.
  • Transient Error Recovery Policies - Applies backoff delays, exception filters, and fallback paths to resiliently recover from intermittent errors.
  • Retry Strategies - Invokes operations programmatically through strategy interfaces and templates that reattempt failed calls.
  • Task Timeout and Retry Configurations - Controls retry behavior by specifying maximum attempt counts, timeouts, and inclusion or exclusion rules.
  • Transaction Retry Logic - Manages stateful retries for transactional resources and database operations requiring rollback handling.
  • Retry State Tracking - Caches retry state outside the call stack to safely handle failures involving transactional resources.
  • Spring Boot Integrations - Integrates with Spring Boot applications to configure automated retry logic and recovery handlers.
  • Workflow Exception Handling - Provides a framework for managing failures in transactional workflows through retry limits and strategies.

Star history

Star history chart for spring-projects/spring-retryStar history chart for spring-projects/spring-retry

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Open-source alternatives to Spring Retry

Similar open-source projects, ranked by how many features they share with Spring Retry.
  • jd/tenacityjd avatar

    jd/tenacity

    8,375View on GitHub↗

    Tenacity is a Python retry library and fault tolerance framework designed to automatically re-execute failing functions based on custom conditions, wait intervals, and stop criteria. It provides a mechanism to apply retry logic to both synchronous functions and asynchronous coroutines. The library implements exponential backoff to increase delays between retries, helping to manage transient network failures and prevent the overloading of services. Its capabilities cover the definition of retry conditions based on exception types or return values, as well as the enforcement of duration limits

    Pythonfailurehacktoberfestpython
    View on GitHub↗8,375
  • zio/ziozio avatar

    zio/zio

    4,347View on GitHub↗

    ZIO is a functional effect system for the JVM that models asynchronous and concurrent programs as pure, composable values with typed error handling and dependency injection. Its core identity is built on fiber-based concurrency, where lightweight, non-blocking fibers execute millions of concurrent tasks with structured lifecycle management, and a dual-channel error model that separates expected business failures from unexpected system defects at compile time. The system provides effect-typed dependency injection through a layer-based dependency graph, pull-based reactive stream processing with

    Scalaasynchronicityasynchronousasynchronous-programming
    View on GitHub↗4,347
  • avast/retry-goavast avatar

    avast/retry-go

    2,929View on GitHub↗

    Retry-go is a utility library for Go that automates the re-execution of failing code blocks and operations until they succeed or exhaust configured attempt limits. It provides mechanisms for handling transient failures, capturing both computed results and final errors from repeatedly executed functions. The library supports configurable retry timing through fixed intervals, exponential backoff strategies, and randomized jitter to control recovery speed and prevent overwhelming recovering services. It also includes error filtering rules that trigger retries on specific error conditions while h

    Gogogolanghacktoberfest
    View on GitHub↗2,929
  • cenkalti/backoffcenkalti avatar

    cenkalti/backoff

    4,021View on GitHub↗

    This is a Go library providing a framework for managing repetitive task execution and implementing exponential backoff strategies. It serves as a concurrency tool designed to prevent system overload during failures by retrying operations with increasing delays. The project implements a retry strategy framework that manages attempt limits and timeouts during unstable network or system calls. It specifically provides an implementation of the exponential backoff algorithm to handle failing operations. The library covers reliability patterns for mitigating transient failures and service outages,

    Gogolang
    View on GitHub↗4,021
See all 30 alternatives to Spring Retry→

Frequently asked questions

What does spring-projects/spring-retry do?

Spring Retry is a Java library that provides exception handling, automated operation reattempts, backoff strategies, and recovery mechanisms for application workflows. It handles transient operation failures through declarative annotations, programmatic templates, stateful context storage, and fallback recovery paths.

What are the main features of spring-projects/spring-retry?

The main features of spring-projects/spring-retry are: Java Libraries, Configurable Retry Engines, Exponential Backoff Retries, Retry Libraries, Exhausted Retry Fallbacks, Transient Error Recovery Policies, Retry Strategies, Task Timeout and Retry Configurations.

What are some open-source alternatives to spring-projects/spring-retry?

Open-source alternatives to spring-projects/spring-retry include: jd/tenacity — Tenacity is a Python retry library and fault tolerance framework designed to automatically re-execute failing… zio/zio — ZIO is a functional effect system for the JVM that models asynchronous and concurrent programs as pure, composable… avast/retry-go — Retry-go is a utility library for Go that automates the re-execution of failing code blocks and operations until they… cenkalti/backoff — This is a Go library providing a framework for managing repetitive task execution and implementing exponential backoff… timgit/pg-boss — pg-boss is a background task scheduler and distributed task queue that uses PostgreSQL as a reliable message broker… sidekiq/sidekiq — Sidekiq is a background job processor and queue manager for Ruby that uses Redis to manage asynchronous tasks. It…

Curated searches featuring Spring Retry

Hand-picked collections where Spring Retry appears.
  • Java development tools
  • Flow control patterns