We're seeing issues using :exponentially_longer where failures in 
downstream systems are causing a thundering herd 
<https://en.wikipedia.org/wiki/Thundering_herd_problem> effect.  A great 
many jobs fail, they all get enqueued to try again in a static interval and 
bring down the downstream system yet again.  This repeats until the retry 
limit is exhausted.

We've gotten around this using a custom `wait` block but since exponential 
backoff with randomness is builtin to some adapters, like Sidekiq 
<https://github.com/mperham/sidekiq/issues/480> , I'm propsing to have it 
baked into to :exponentially_longer.

I submitted a PR here: https://github.com/rails/rails/pull/31872

You received this message because you are subscribed to the Google Groups "Ruby 
on Rails: Core" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to rubyonrails-core+unsubscr...@googlegroups.com.
To post to this group, send email to rubyonrails-core@googlegroups.com.
Visit this group at https://groups.google.com/group/rubyonrails-core.
For more options, visit https://groups.google.com/d/optout.

Reply via email to