Opening Scenario
Your platform needs async messaging in three different places. First: when a user uploads a video, a transcoding worker needs to pick it up and process it. Second: when a payment succeeds, three different services (email, inventory, analytics) all need to know. Third: when any AWS resource in your account changes state, your security team's compliance system should receive a structured notification. Three problems — but which AWS service fits each one?
Question Progression
1. Does the message go to one consumer or many?
Question: For the video transcoding use case, how many services need to act on the "video uploaded" message?
Reasoning: Exactly one worker processes each video. If two workers pick up the same message, the video gets transcoded twice — wasted compute at best, a race condition at worst. You need point-to-point delivery: one message, one consumer.
For the payment success notification, three different services each need…
In the full tutorial
- When to Reach for Each