Orders must be processed reliably, each by one worker. What fits?
Why C is the answer
A Service Bus queue
Queues let competing consumers each take exclusive ownership of a message.
In detail
- A Service Bus queue gives each message to one worker, reliably.
- Make workers idempotent, in case a message repeats.
Use case
An illustrative scenario, not a real incident.
Orders must each be processed once by one worker. A Service Bus queue gives one worker each message, with retries.
See it in different ways
flowchart TD
A{"What are you sending?"} -->|"A notification about a change"| B["Event Grid"]
A -->|"Work that must be processed reliably"| C["Service Bus"]
C --> D["Queue: one consumer per message"]
C --> E["Topic: many subscribers"]mindmap
root((Messaging))
Event Grid
Events
Filters
Service Bus queue
One worker per message
Service Bus topic
Many subscribers
Own filters
Dead-letter queue
Failed messagesflowchart LR S0["Order placed"] --> S1["Service Bus queue"] --> S2["One worker"] --> S3["Complete"]
Key point: Queues give each message to one worker.
Why the other options are wrong
- A. A Redis key that all of the workers overwrite
- Overwriting a key loses orders.
- B. An Event Grid topic with no subscribers
- No subscribers means nothing is processed.
- D. A shared text file that each worker reads
- A shared file has no delivery guarantees.

