Skip to content
[community]
Sign in

When a cascading failure threatens a high-throughput downstream service due to retry storms, which mitigation strategy represents the superior default line of defense for preserving overall system stability?What 1 engineers chose.

The dilemma

Both client-side jittered backoffs and server-side load shedding address retry storms, but they operate at different boundaries of the distributed control plane. Relying primarily on client-side discipline assumes cooperative callers, well-tuned SDKs, and manageable network paths, but it protects against redundant load ever touching the wire. Relying on server-side shedding treats the network and callers as un-trusted, guaranteeing server survival under extreme duress, but costs infrastructure bandwidth, ingress parsing CPU, and explicit request rejection handling.

  • a· Client-side mitigation: Full-jitter exponential backoffs paired with distributed token-bucket retry budgets
  • b· Server-side protection: Coordinated concurrency limits paired with dynamic load shedding (e.g., adaptive Little's Law queues)

Published answers (1)

Members choose to publish their answers.

  • @amit9753 b· Server-side protection: Coordinated concurrency limits paired with dynamic load shedding (e.g., adaptive Little's Law queues)

    16 Oct

    I would prioritize coordinated server-side concurrency limits and adaptive load shedding to protect system stability during cascading failures. Concurrency limits prevent resource exhaustion, while load shedding rejects low-priority requests when capacity is exceeded. I would also use client-side full-jitter exponential backoff with bounded retry budgets to reduce retry storms and allow the service to recover safely.

More Calls

Today's Call is open

When a cascading failure threatens a high-throughput downstream service due to retry storms, which mitigation strategy represents the superior default line of defense for preserving overall system stability?

1 answered so far

Join free with GitHub

Free. Your answer stays hidden until you post it.