Displaying 1 to 20 from 29 results

Polly - Polly is a

  •    CSharp

Polly is a .NET resilience and transient-fault-handling library that allows developers to express policies such as Retry, Circuit Breaker, Timeout, Bulkhead Isolation, and Fallback in a fluent and thread-safe manner.Polly targets .NET 4.0, .NET 4.5 and .NET Standard 1.1 (coverage: .NET Core, Mono, Xamarin.iOS, Xamarin.Android, UWP, WP8.1+).

Istio - An open platform to connect, manage, and secure microservices

  •    Go

An open platform to connect, manage, and secure microservices. Istio is an open platform for providing a uniform way to integrate microservices, manage traffic flow across microservices, enforce policies and aggregate telemetry data. Istio's control plane provides an abstraction layer over the underlying cluster management platform, such as Kubernetes, Mesos, etc.

heimdall - An enhanced HTTP client for Go

  •    Go

All HTTP methods are exposed as a fluent interface. This package can be used by adding the following import statement to your .go files.




guard - NOT MAINTAINED! A generic high performance circuit breaker & proxy server written in Go

  •    Go

NOT MAINTAINED! A generic high performance circuit breaker & proxy server written in Go

semian - :monkey: Resiliency toolkit for Ruby for failing fast

  •    Ruby

Semian is a library for controlling access to slow or unresponsive external services to avoid cascading failures.Resource drivers are monkey-patched to be aware of Semian, these are called Semian Adapters. Thus, every time resource access is requested Semian is queried for status on the resource first. If Semian, through the patterns above, deems the resource to be unavailable it will raise an exception. The ultimate outcome of Semian is always an exception that can then be rescued for a graceful fallback. Instead of waiting for the timeout, Semian raises straight away.

Heimdall - An enhanced HTTP client for Go

  •    Go

Heimdall is an HTTP client that helps your application make a large number of requests, at scale. With Heimdall, you can use a hystrix-like circuit breaker to control failing requests, Add synchronous in-memory retries to each request, with the option of setting your own retrier strategy, Create clients with different timeouts for every request.

Samples - Steeltoe Sample Applications

  •    Javascript

All new development is done on the dev branch. More stable versions of the samples can be found on the master branch. If you are looking for documentation on how to use the Steeltoe components, you can find that here.


circuit-breaker - PHP implementation of circuit breaker pattern

  •    PHP

Circuit breaker is heavily used in microservice architecture to find issues between microservices calls. The main idea is to protect your code from making unnecessary call if the microservice you call is down.

CircuitBreaker - A Swift Circuit Breaker library – Improves application stability and reliability.

  •    Swift

The Circuit Breaker design pattern is used to increase application stability, improve response time, and prevent the application from making constant failing requests. This library provides the tools needed to bring Circuit Breaker logic to your Swift applications. The latest version of CircuitBreaker works with the 4.0.3 and newer version of the Swift binaries. You can download this version of the Swift binaries by following this link.

Node-Circuit-Breaker - A Node.js implementation of the Circuit Breaker pattern.

  •    Javascript

This is a Node.js implementation of the Circuit Breaker pattern as popularized in Michael T. Nygard's book - Release It!. The Circuit Breaker is intended to proxy the consumption of upstream resources such that failures in the upstream resource propagate to the current system in a predictable manner. To be clear, the Circuit Breaker doesn't prevent failures; rather, it helps your application manage failures proactively, failing fast and / or providing fallback values when applicable. The Circuit Breaker proxies the consumption of upstream resources; but, it does not have intimate knowledge of the upstream resource. As such, the scope of the Circuit Breaker can be as course or as granular as you think is appropriate. For example, you can have one Circuit Breaker that represents an entire upstream resource. Or, you can create an individual Circuit Breaker for each method in an upstream resource. The more granular your Circuit Breakers, the less likely you are to get false positives.

gobreak - Latency and fault tolerance library like Netflix's Hystrix with prometheus and gobreaker.

  •    Go

Latency and fault tolerance library like Netflix's Hystrix with prometheus and gobreaker. Also you can use Grafana instead to graph and alert, which is recommended.

clj-http-hystrix - A Clojure library to wrap clj-http requests as hystrix commands

  •    Clojure

A Clojure library to wrap clj-http requests as hystrix commands whenever a request options map includes :hystrix/... keys. Requests without any :hystrix/... keys won't use Hystrix. If you include at least one :hystrix/... key then any keys not specified will take the above (default) values.

ng-http-circuitbreaker - AngularJS based $http circuit-breaker pattern implementation

  •    Javascript

ngHttpCircuitBreaker is an attempt to model the circuit-breaker pattern for angular services and $http calls. For a great explanation of the benefits of the circuit-breaker pattern, see http://techblog.netflix.com/2011/12/making-netflix-api-more-resilient.html. The ng-http-circuitbreaker is created as an $http interceptor and therefore AngularJS v1.1.5+ is required. Please note that while a client-side angular circuit breaker should help reduce load on your backend servers in the event of system failures, it is not a replacement for server side circuit breakers / fail-over designs. The point of the client side circuit breaker is to lessen the demand for doomed requests against your server, hopefully giving the server time to recover.

ganesha - :elephant: PHP implementation of Circuit Breaker pattern.

  •    PHP

Ganesha is PHP implementation of Circuit Breaker pattern which has multi strategies to avoid cascading failures and supports various storages to record statistics. It is one of the very active Circuit Breaker in PHP and production ready: well-tested, well-documented. 💪 You can integrate Ganesha to your existing code base easily as Ganesha provides just simple interface and Guzzle Middleware behaves transparency.

request-on-steroids - An HTTP client :sparkles: with retry, circuit-breaker and tor support :package: out-of-the-box

  •    Javascript

An HTTP client with rate limiter, retry, circuit-breaker and tor support out-of-the-box. You can contribute either with code (e.g., new features, bug fixes and documentation) or by donating 5 EUR. You can read the contributing guidelines for instructions on how to contribute with code.

smartcb - A self configuring circuit breaker in Go

  •    Go

A circuit breaker that continuously adjusts itself according to the error rate profile of the protected task and configures the right tripping threshold as needed. Package smartcb provides a circuit breaker based on https://github.com/rubyist/circuitbreaker that automatically adjusts the tripping error threshold based on abnormal increase in error rate. All you need to tell it is the nominal QPS ("queries per second") for your task and it automatically sets the best values for adjusting the circuit breaker's responsiveness. If you want, you can adjust the circuit breaker's sensitivity as per your situation.

perron - A sane node.js client for web services

  •    Javascript

A sane client for web services with a built-in circuit-breaker, support for filtering both request and response. In 0.6.0 we changed the fields of timings and timingPhases on ServiceClientResponse to be nullable, or undefinedable to be accurate. Previously timings had -1 when a field was missing, and timingPhases had wrong numbers in those cases.