recentpopularlog in

retry

« earlier   
Designing robust and predictable APIs with idempotency
The Stripe Ruby library retries on failure automatically with an idempotency key using increasing backoff times and jitter. The implementation for that is pretty simple, and you can refer to it on GitHub to see exactly how it works.
jitter  backoff  architecture  idempotency  retry 
10 weeks ago by hellsten
stripe-ruby/stripe_client.rb at 1bb9ac48b916b1c60591795cdb7ba6d18495e82d · stripe/stripe-ruby
def self.sleep_time(retry_count)
# Apply exponential backoff with initial_network_retry_delay on the
# number of attempts so far as inputs. Do not allow the number to exceed
# max_network_retry_delay.
sleep_seconds = [Stripe.initial_network_retry_delay * (2 ** (retry_count - 1)), Stripe.max_network_retry_delay].min

# Apply some jitter by randomizing the value in the range of (sleep_seconds
# / 2) to (sleep_seconds).
sleep_seconds = sleep_seconds * (0.5 * (1 + rand()))

# But never sleep less than the base sleep seconds.
sleep_seconds = [Stripe.initial_network_retry_delay, sleep_seconds].max

sleep_seconds
end
backoff  jitter  api  webhooks  rest  retry  sleep  idempotency 
10 weeks ago by hellsten
OptimalBits/bull: Premium Queue package for handling jobs and messages in NodeJS.
GitHub is where people build software. More than 28 million people use GitHub to discover, fork, and contribute to over 85 million projects.
nodejs  redis  queue  javascript  performance  reliability  scheduling  retry  concurrency  job 
june 2018 by orlin
AWS IAM Role issue without retry · Issue #94 · fluent-plugins-nursery/fluent-plugin-cloudwatch-logs
What we do is we have a fluentd container sending logs to AWS cloudwatch from other containers in kubernetes. The EC2 instances where it runs do have proper role set that allows it to send logs. It looks like sometimes there are some tim...
aws  iam  retry  sdk  cloudwatch  timeout  credentials  refresh  metadata  logs  fluent  fluentd  plugin 
june 2018 by eeichinger
hashicorp/go-retryablehttp: Retryable HTTP client in Go
GitHub is where people build software. More than 28 million people use GitHub to discover, fork, and contribute to over 85 million projects.
golang  http  retry 
june 2018 by bdimcheff

Copy this bookmark:





to read