Uh oh!
There was an error while loading.Please reload this page.
- Notifications
You must be signed in to change notification settings - Fork9.7k
[Messenger] Add jitter parameter to MultiplierRetryStrategy#53328
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to ourterms of service andprivacy statement. We’ll occasionally send you account related emails.
Already on GitHub?Sign in to your account
Uh oh!
There was an error while loading.Please reload this page.
Conversation
nicolas-grekas left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others.Learn more.
I'm fine with a default non-null jitter.
src/Symfony/Bundle/FrameworkBundle/DependencyInjection/Configuration.php OutdatedShow resolvedHide resolved
Uh oh!
There was an error while loading.Please reload this page.
Uh oh!
There was an error while loading.Please reload this page.
src/Symfony/Component/Messenger/Retry/MultiplierRetryStrategy.php OutdatedShow resolvedHide resolved
Uh oh!
There was an error while loading.Please reload this page.
96e3c84 to9949684Comparefabpot commentedJan 6, 2024
Thank you@rmikalkenas. |
Uh oh!
There was an error while loading.Please reload this page.
I'm seeing an interesting case, when multiple queue consumers causes failures in a downstream systems a.k.a.thundering herd effect.
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.
Introduced delay randomness prevents thundering herd effect. The randomness can be controlled via
$jitterparameter.Open question: I added$jitterparameter with a default value of0.1(as inhttp client's generic retry), but maybe it should be set as0to keep code in a BC fashion?