Designing Idempotent Systems
Why retries should be boring
Caleb Durojaiye
Tue Jul 28 2026 · 1 min read
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. In a distributed system, the network is not a detail you abstract away — it is the substrate, and it forgets its promises constantly. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
An operation is idempotent when applying it once produces the same observable state as applying it a hundred times. Sed ut perspiciatis unde omnis iste natus error sit voluptatem accusantium doloremque laudantium, totam rem aperiam. The moment you accept that clients will retry — and they will, because timeouts are indistinguishable from failures — you accept that every mutating endpoint needs a dedup key.
Nemo enim ipsam voluptatem quia voluptas sit aspernatur aut odit aut fugit. Store the key, the result, and a window. Neque porro quisquam est, qui dolorem ipsum quia dolor sit amet, consectetur, adipisci velit. When the same key arrives again, replay the recorded result instead of re-executing the side effect.
At vero eos et accusamus et iusto odio dignissimos ducimus qui blanditiis praesentium voluptatum deleniti atque corrupti quos dolores et quas molestias excepturi sint occaecati cupiditate non provident. Exactly-once delivery is a marketing phrase; at-least-once delivery plus idempotent consumers is an engineering discipline.
Et harum quidem rerum facilis est et expedita distinctio. Nam libero tempore, cum soluta nobis est eligendi optio cumque nihil impedit quo minus id quod maxime placeat facere possimus omnis voluptas assumenda est. The goal is not to prevent retries. The goal is to make them boring.