System design · Mechanisms — replication, queues, limits, and placement

Queues, backpressure, and what you are willing to drop

A queue does not make a slow system fast; it changes what happens when the system is too slow. This derives the arithmetic of a growing queue, the difference between a buffer and a backlog, exactly-once as a fiction you replace with idempotency, and why every queue design is really a policy about dropping work.

25 min read Full lesson in the app Patterns: backpressure, idempotency-key, dead-letter-queue

What you'll be able to do

Before this: back-of-the-envelope

Log in to read the rest of this lesson

A queue does not make a slow system fast; it changes what happens when the system is too slow. This derives the arithmetic of a growing queue, the difference between a buffer and a backlog, exactly-once as a fiction you replace with idempotency, and why every queue design is really a policy about dropping work. This walkthrough runs about 25 minutes, with runnable code you can edit and re-run as you read. A new account gets 7 days of Pro free, no card required.

Log in to continue

The first module of every track is free to read on the web: see what's open in System design.