Fan-Out Delivery
Delivering one published message to many independent subscribers, each with its own copy, position and failure handling.
The property that distinguishes publish-subscribe from a queue: a queue delivers each message to one consumer; a topic delivers it to every subscriber. Adding a subscriber requires no change to the publisher, which is the decoupling the pattern exists for.
Design decisions that follow:
Per-subscriber position and retention. Each subscriber tracks its own offset, so a slow or failed subscriber falls behind without affecting others — provided retention is long enough for it to catch up. Retention is therefore a resilience parameter, not just a cost setting.
Fan-out cost grows with subscriber count, which is a capacity question when a topic has thousands of subscribers or large payloads. Fan-out-on-write versus fan-out-on-read is the classic trade, most visible in social feeds where a celebrity's followers make write-time fan-out untenable.
Filtering at the broker avoids delivering messages a subscriber will discard, which matters at high volume.
The organisational consequence is the important one: the publisher no longer knows who consumes, which is the benefit and the difficulty. A schema change can break consumers the publisher has never heard of — hence a schema registry with enforced compatibility.