retry - A simple, stateless, functional mechanism to perform actions repetitively until successful.

  •        17

A simple, stateless, functional mechanism to perform actions repetitively until successful. This project is currently in "pre-release". While the code is heavily tested, the API may change. Vendor (commit or lock) this dependency if you plan on using it.

https://godoc.org/github.com/Rican7/retry
https://github.com/Rican7/retry

Tags
Implementation
License
Platform

   




Related Projects

resque-retry - A resque plugin; provides retry, delay and exponential backoff support for resque jobs

  •    Ruby

A Resque plugin. Requires Resque ~> 1.25 & resque-scheduler ~> 4.0. This gem provides retry, delay and exponential backoff support for resque jobs.

guava-retrying - This is a small extension to Google's Guava library to allow for the creation of configurable retrying strategies for an arbitrary function call, such as something that talks to a remote service with flaky uptime

  •    Java

##What is this? The guava-retrying module provides a general purpose method for retrying arbitrary Java code with specific stop, retry, and exception handling capabilities that are enhanced by Guava's predicate matching. This is a fork of the excellent RetryerBuilder code posted here by Jean-Baptiste Nizet (JB). I've added a Gradle build for pushing it up to my little corner of Maven Central so that others can easily pull it into their existing projects with minimal effort. It also includes exponential and Fibonacci backoff WaitStrategies that might be useful for situations where more well-behaved service polling is preferred.

retriable - Retriable is an simple DSL to retry failed code blocks with randomized exponential backoff

  •    Ruby

Retriable is a simple DSL to retry failed code blocks with randomized exponential backoff time intervals. This is especially useful when interacting external APIs, remote services, or file system calls. If you need ruby 1.9.3 support, use the 2.x branch by specifying ~2.1 in your Gemfile.

spring-retry

  •    Java

Spring Retry provides an abstraction around retrying failed operations, with an emphasis on declarative control of the process and policy-based bahaviour that is easy to extend and customize. For instance, you can configure a plain POJO operation to retry if it fails, based on the type of exception, and with a fixed or exponential backoff.

node-retry - Abstraction for exponential and custom retry strategies for failed operations.

  •    Javascript

Abstraction for exponential and custom retry strategies for failed operations. This module has been tested and is ready to be used.


toxy - Hackable HTTP proxy for resiliency testing and simulated network conditions

  •    Javascript

Hackable HTTP proxy to simulate server failure scenarios, resiliency and unexpected network conditions, built for node.js.It was mainly designed for failure resistance testing, when toxy becomes particularly useful in order to cover fault tolerance and resiliency capabilities of a system, especially in disruption-tolerant networks and service-oriented architectures, where toxy may act as MitM proxy among services in order to inject failure.

node-graceful-fs - fs with incremental backoff on EMFILE

  •    Javascript

graceful-fs functions as a drop-in replacement for the fs module, making various improvements.The improvements are meant to normalize behavior across different platforms and environments, and to make filesystem access more resilient to errors.

backoff - Simple backoff algorithm in Go (golang)

  •    Go

Backoff is a time.Duration counter. It starts at Min. After every call to Duration() it is multiplied by Factor. It is capped at Max. It returns to Min on every call to Reset(). Jitter adds randomness (see below). Used in conjunction with the time package. Enabling Jitter adds some randomization to the backoff durations. See Amazon's writeup of performance gains using jitter. Seeding is not necessary but doing so gives repeatable results.

backoff - The exponential backoff algorithm in Go (Golang).

  •    Go

This is a Go port of the exponential backoff algorithm from Google's HTTP Client Library for Java. Exponential backoff is an algorithm that uses feedback to multiplicatively decrease the rate of some process, in order to gradually find an acceptable rate. The retries exponentially increase and stop increasing when a certain threshold is met.

resilience4j - Resilience4j is a fault tolerance library designed for Java8 and functional programming

  •    Java

Resilience4j is a lightweight fault tolerance library inspired by Netflix Hystrix, but designed for Java 8 and functional programming. Lightweight, because the library only uses Vavr (formerly Javaslang), which does not have any other external library dependencies. Netflix Hystrix, in contrast, has a compile dependency to Archaius which has many more external library dependencies such as Guava and Apache Commons Configuration. With Resilience4j you don’t have to go all-in, you can pick what you need. Setup and usage is described in our User Guide.

rspec-retry - retry randomly failing rspec example

  •    Ruby

RSpec::Retry adds a :retry option for intermittently failing rspec examples. If an example has the :retry option, rspec will retry the example the specified number of times until the example succeeds. You can call ex.run_with_retry(opts) on an individual example.

express-brute - Brute-force protection middleware for express routes by rate limiting incoming requests

  •    Javascript

A brute-force protection middleware for express routes that rate-limits incoming requests, increasing the delay with each request in a fibonacci-like sequence. An in-memory store for persisting request counts. Don't use this in production, instead choose one of the more robust store implementations listed below.

rocky - Full-featured, middleware-oriented, programmatic HTTP and WebSocket proxy for node.js

  •    Javascript

A multipurpose, full-featured, middleware-oriented and hackable HTTP/S and WebSocket proxy with powerful built-in features such as versatile routing layer, traffic interceptor and replay to multiple backends, built-in balancer, traffic retry/backoff logic, hierarchical configuration, among others. Built for node.js/io.js.rocky can be fluently used programmatically or via command-line interface. It's framework agnostic, but you can optionally plug in with connect/express apps.

tenacity - Retrying library for Python

  •    Python

Tenacity is an Apache 2.0 licensed general-purpose retrying library, written in Python, to simplify the task of adding retry behavior to just about anything. It originates from a fork of retrying. The simplest use case is retrying a flaky function whenever an Exception occurs until a value is returned.

huey - a little task queue for python

  •    Python

huey is a little task queue in Python. It supports multi-process, multi-thread or greenlet task execution models. It can schedule tasks to execute at a given time, or after a given delay, schedule recurring tasks, like a crontab, retry tasks that fail automatically, task result storage.

node-s3-client - high level amazon s3 client for node.js

  •    Javascript

See also the companion CLI tool which is meant to be a drop-in replacement for s3cmd: s3-cli.This contains a reference to the aws-sdk module. It is a valid use case to use both this module and the lower level aws-sdk module in tandem.

KSYMediaPlayer_Android - 金山云Android播放SDK(KSYUN Live Streaming player SDK),支持RTMP HTTP-FLV HLS 协议(supporting RTMP HTTP-FLV HLS protocol),直播延时2-3秒(Living delay 2 or 3 seconds),supporting jitter control,software&hardware decode

  •    Java

金山云Android播放SDK(KSYUN Live Streaming player SDK),支持RTMP HTTP-FLV HLS 协议(supporting RTMP HTTP-FLV HLS protocol),直播延时2-3秒(Living delay 2 or 3 seconds),supporting jitter control,software&hardware decode

SQL Fault Retry Provider

  •    

The Fault Retry sample demonstrates recommended practices for creating high availability database applications using SQL Server mirroring technology in the back end.

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+).

async-retry - Retrying made simple, easy and async

  •    Javascript

Retrying made simple, easy and async