Drop the same event into all three and watch what's left afterward: a queue deletes it, pub/sub forgets offline subscribers, and a stream keeps it on a replayable log with offsets and consumer groups.
One event โ one worker. After it's processed the broker deletes it. No copy, no replay.
Each online subscriber gets its own copy. Toggle one offline, emit, and it misses the event โ no way to get it back.
Events are kept. Each group reads at its own offset; replay re-reads history. Offline consumers catch up later.