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

Entdecke die besten Open-Source-Repositories mit KI-gestützter Suche.

EntdeckenKuratierte SuchenOpen-Source-AlternativenSelf-hosted SoftwareBlogSitemap
ProjektMCP-ServerÜber unsRanking-MethodikPresse
RechtlichesDatenschutzAGB
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
resilience4j avatar

resilience4j/resilience4j

0
View on GitHub↗
10,689 Stars·1,468 Forks·Java·Apache-2.0·10 Aufrufe

Resilience4j

Resilience4j is a fault tolerance library for Java 8 applications designed to handle failures in distributed systems. It provides a comprehensive suite of resilience patterns including resource isolation, request throttling, retries, and timeouts.

The project implements specific stability mechanisms such as circuit breakers to prevent cascading failures, bulkheads for system resource isolation, and rate limiters to cap execution rates. It also includes a retry framework with backoff policies and timeout enforcement to manage transient faults and maximum execution durations.

Additional capabilities cover the provision of fallback responses when primary operations fail and the use of a caching layer to store results of expensive operations. The library utilizes a registry-based system to manage unique resilience pattern instances and an event-driven streaming system for monitoring state transitions and operation results.

Features

  • Fault Tolerance - Provides a comprehensive suite of patterns to handle failures in distributed Java applications and prevent cascading crashes.
  • Circuit Breakers - Implements a circuit breaker that blocks calls to struggling services to allow them to recover.
  • Cascading Failure Preventions - Stops requests from hitting a failing service once a failure threshold is reached to prevent domino effects.
  • Transient Fault Recovery - Implements configurable retry policies with backoff strategies to recover from transient network or service errors.
  • Transient Error Recovery Policies - Ships configurable policies to attempt re-execution of failed operations to mitigate transient errors.
  • Function Decorators - Implements function decorators using Java 8 functional interfaces to intercept and manage execution flow.
  • Bulkheading - Provides bulkhead mechanisms to isolate system resources and prevent cascading failures through concurrency limiting.
  • Rate Limiting - Implements a token-bucket algorithm to cap the number of permitted executions within a specific timeframe.
  • Resilience Pattern Registries - Provides a centralized registry for configuring and monitoring unique resilience pattern instances across backend services.
  • Retry Policies - Provides a retry mechanism that repeats failed operations with configurable wait intervals and backoff algorithms.
  • Backoff Strategies - Implements configurable retry frameworks with advanced backoff policies to handle transient faults.
  • Configuration Registries - Ships a registry-based system to manage unique resilience pattern configurations across different service calls.
  • Circuit Breaking States - Implements a finite state machine to track circuit breaker transitions between closed, open, and half-open states.
  • Concurrency Limiters - Uses semaphores to restrict the number of active simultaneous executions to maintain system stability.
  • Failure Isolation Mechanisms - Uses semaphores and fixed thread pools to isolate system resources and prevent wide-scale exhaustion.
  • Timeout Enforcements - Implements automatic cancellation of tasks that exceed defined time thresholds to ensure system responsiveness.
  • Request Throttling - Limits the frequency and volume of requests to protect backend services from being overwhelmed.
  • Concurrency-Based Dependency Isolation - Prevents a single slow dependency from exhausting system threads using concurrency limits and timeouts.
  • Fallback Mechanisms - Returns alternative results or default values when a primary operation fails or is blocked by a circuit breaker.
  • Event Monitoring Streams - Provides a streaming system that publishes state transitions and execution results for external monitoring.
  • Event Monitoring Systems - Ships an event-driven streaming system that publishes state transitions and execution results for external monitoring.
  • Sliding Window Counters - Tracks operation results using sliding time windows to calculate real-time success and failure rates.
  • Microservices - Fault tolerance library for Java.
  • Distributed Systems - Functional fault tolerance library.
  • Resilience and Fault Tolerance - Fault tolerance library for Java applications.

Star-Verlauf

Star-Verlauf für resilience4j/resilience4jStar-Verlauf für resilience4j/resilience4j

KI-Suche

Entdecke weitere awesome Repositories

Beschreibe in einfachen Worten, was du brauchst — die KI bewertet tausende kuratierte Open-Source-Projekte nach Relevanz.

Start searching with AI

Open-Source-Alternativen zu Resilience4j

Ähnliche Open-Source-Projekte, sortiert nach der Anzahl der gemeinsamen Funktionen mit Resilience4j.
  • jhalterman/failsafeAvatar von jhalterman

    jhalterman/failsafe

    4,307Auf GitHub ansehen↗

    Failsafe is a JVM resilience library providing a collection of fault tolerance patterns for Java applications. It functions as an asynchronous execution wrapper that runs tasks in the background and returns futures to prevent thread blocking. The library allows for the composition of resilience policies, enabling multiple patterns to be stacked into a sequential pipeline. It includes specific implementations for circuit breaking to prevent system overload, rate limiting to control traffic flow, and a framework for managing retries and fallbacks. Capability areas cover traffic management thro

    Java
    Auf GitHub ansehen↗4,307
  • netflix/hystrixAvatar von Netflix

    Netflix/Hystrix

    24,461Auf GitHub ansehen↗

    Hystrix is a latency and fault tolerance library designed to prevent cascading failures in distributed systems. It functions as a circuit breaker implementation that monitors failure thresholds and opens circuits to isolate remote calls when downstream services degrade. The project distinguishes itself by providing multiple isolation mechanisms, utilizing dedicated thread pools and semaphores to ensure that latency in one dependency does not saturate the entire system. It also features a request collapsing and batching engine that groups concurrent calls into single executions to reduce the t

    Java
    Auf GitHub ansehen↗24,461
  • app-vnext/pollyAvatar von App-vNext

    App-vNext/Polly

    14,191Auf GitHub ansehen↗

    Polly is a resilience and transient-fault-handling library for .NET applications. It provides a framework for defining and executing stability patterns that manage failures and resource exhaustion during operation execution. The library enables developers to compose complex resilience strategies through a fluent builder pattern, wrapping target operations in functional decorators. These policies intercept execution flow to apply automated recovery mechanisms, such as retries for temporary errors or circuit breakers that isolate unstable components by blocking requests. The framework supports

    C#circuit-breakercircuit-breaker-patterndotnet
    Auf GitHub ansehen↗14,191
  • doocs/advanced-javaAvatar von doocs

    doocs/advanced-java

    78,987Auf GitHub ansehen↗

    This project is a comprehensive Java backend engineering guide and technical reference focused on high-concurrency design, distributed systems, and microservices architecture. It provides detailed strategies for decomposing monolithic applications, managing service discovery, and implementing the architectural patterns required for scalable backend environments. The repository distinguishes itself through an extensive collection of big data algorithmic references and database scaling strategies. It covers memory-efficient techniques for analyzing massive datasets, such as Top-K element extrac

    Javaadvanced-javadistributed-search-enginedistributed-systems
    Auf GitHub ansehen↗78,987
Alle 30 Alternativen zu Resilience4j anzeigen→

Häufig gestellte Fragen

Was macht resilience4j/resilience4j?

Resilience4j is a fault tolerance library for Java 8 applications designed to handle failures in distributed systems. It provides a comprehensive suite of resilience patterns including resource isolation, request throttling, retries, and timeouts.

Was sind die Hauptfunktionen von resilience4j/resilience4j?

Die Hauptfunktionen von resilience4j/resilience4j sind: Fault Tolerance, Circuit Breakers, Cascading Failure Preventions, Transient Fault Recovery, Transient Error Recovery Policies, Function Decorators, Bulkheading, Rate Limiting.

Welche Open-Source-Alternativen gibt es zu resilience4j/resilience4j?

Open-Source-Alternativen zu resilience4j/resilience4j sind unter anderem: jhalterman/failsafe — Failsafe is a JVM resilience library providing a collection of fault tolerance patterns for Java applications. It… netflix/hystrix — Hystrix is a latency and fault tolerance library designed to prevent cascading failures in distributed systems. It… app-vnext/polly — Polly is a resilience and transient-fault-handling library for .NET applications. It provides a framework for defining… doocs/advanced-java — This project is a comprehensive Java backend engineering guide and technical reference focused on high-concurrency… alibaba/sentinel — Sentinel is a microservice flow control framework designed for managing traffic limits, distributed circuit breaking,… failsafe-lib/failsafe — Failsafe is a JVM fault tolerance library and resilience pattern framework. It provides a toolkit for implementing…