DM
Engineering journal
Production LessonLearned in productionAll levels

Retries need idempotency

Retrying unsafe work can multiply damage instead of improving reliability.

Last reviewed July 2026

What I keep in mind

Networks fail and clients retry. Before retrying a write, I ask whether repeating it produces the same result.

  • Use stable idempotency keys for business operations
  • Enforce uniqueness in durable storage
  • Return the original result for repeated requests
  • Use bounded backoff with jitter
  • Observe retry exhaustion and provide recovery tooling
#reliability#apis#queues