From 049aedcaa0e7c8daa6e8c529bc67e79f58acc7ba Mon Sep 17 00:00:00 2001 From: mo Date: Sat, 10 Nov 2018 20:01:21 -0700 Subject: start backoff at 100 ms --- lib/net/hippie/client.rb | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/lib/net/hippie/client.rb b/lib/net/hippie/client.rb index edd31ba..db31faa 100644 --- a/lib/net/hippie/client.rb +++ b/lib/net/hippie/client.rb @@ -62,14 +62,14 @@ module Net execute(uri, request, &block) end - # attempt 1 -> delay 1 second - # attempt 2 -> delay 2 second - # attempt 3 -> delay 4 second - # attempt 4 -> delay 8 second - # attempt 5 -> delay 16 second - # attempt 6 -> delay 32 second - # attempt 7 -> delay 64 second - # attempt 8 -> delay 128 second + # attempt 1 -> delay 0.1 second + # attempt 2 -> delay 0.2 second + # attempt 3 -> delay 0.4 second + # attempt 4 -> delay 0.8 second + # attempt 5 -> delay 1.6 second + # attempt 6 -> delay 3.2 second + # attempt 7 -> delay 6.4 second + # attempt 8 -> delay 12.8 second def with_retry(retries: 3) retries = 0 if retries.nil? || retries.negative? 0.upto(retries) do |n| @@ -77,7 +77,7 @@ module Net rescue *::Net::Hippie::CONNECTION_ERRORS => error raise error if n == retries - delay = (2**n) + rand(0.5) # delay + jitter + delay = ((2**n) * 0.1) + Random.rand(0.05) # delay + jitter warn("`#{error.message}` Retry: #{n + 1}/#{retries} Delay: #{delay}s") sleep delay end -- cgit v1.2.3