ulearn/systems

topics / async-messaging

Message Queue

A generic event-driven pipeline, not one broker's API — a bounded backlog, competing or fanned-out consumers, and what actually happens when one crashes mid-job or the producer outruns them. Switch delivery modes, kill a consumer, and watch redelivery, retries and the dead-letter queue do their jobs.

Every term this topic uses, defined once. Anywhere you see a word with a dotted underline — on Simulate or Study — hovering (or tapping, on touch) shows the same definition inline; this page is just the full list in one place.

Terms

Ack (acknowledgment)

A consumer's explicit signal that it actually finished processing a message — not just received it. Only once a message is acked does the broker consider it done.

Visibility timeout

How long the broker waits after handing a message to a consumer, with no ack, before assuming that consumer died and making the message visible to other consumers again.

Redelivery

Handing a message to a different consumer after its visibility timeout expires without an ack — the broker's way of recovering from a consumer that crashed mid-job.

Backpressure

What the broker does once its backlog is full: either drop new messages outright, or pause the producer until a consumer frees up room. Both policies protect the broker from unbounded growth — they just fail differently.

Dead-letter queue (DLQ)

A separate backlog a message moves to after it's failed (or its consumer crashed) too many times to keep retrying. It's the thing you actually monitor in production — a climbing DLQ count means something is systematically broken.

Work queue (competing consumers)

One shared backlog where each message is delivered to exactly one consumer — whichever is free first. A pool of workers splitting up discrete jobs.

Fan-out (pub/sub)

Every consumer gets its own full copy of every message, and keeps its own backlog if it falls behind — as opposed to a work queue, where each message goes to only one consumer.

Max retries

How many times a failed message gets redelivered before the broker gives up and sends it to the dead-letter queue instead of trying again forever.