AZ-305
Deep Dive
Guaranteed question on the AZ-305: Storage Queue vs Service Bus vs Event Grid vs Event Hubs. The key is distinguishing messages (commands with per-unit value) from events (notifications) and streams (massive telemetry).
Contents
Message (command)
Event (notification)
Stream (telemetry)
📨Árbol de decisión — Mensajería y Eventos
Storage Queue · Service Bus · Event Grid · Event Hubs
Pregunta 1
¿Qué patrón de comunicación necesitas?
💡 La distinción fundamental: mensajes = comandos con procesamiento garantizado por unidad. Eventos = notificaciones "algo ocurrió". Streams = telemetría masiva re-leíble.
| Service | Paradigm | Differentiators | Anti-case |
|---|---|---|---|
| Storage Queues | Simple queue | Cheap, up to 500 TB, 64 KB messages. No ordering or duplicate detection | FIFO, transactions, pub/sub |
| Service Bus | Enterprise queues/topics | FIFO (sessions), dedup, transactions, DLQ, pub/sub topics, AMQP. Premium: zones + VNet | Massive telemetry (expensive per message) |
| Event Grid | Discrete push events | Reactive routing of events from Azure services and custom sources; filters; push to handlers (Functions, webhooks); MQTT broker for IoT | Large payloads, guaranteed work-queue semantics |
| Event Hubs | Streaming (partitioned log) | Millions of events/s, re-readable retention, consumer groups, Kafka-compatible, Capture to storage | Individual commands requiring guaranteed per-unit processing |
Features the exam calls out
Receive modes and tiers
Sources and handlers
Guarantees
Combined patterns (very exam-relevant)
The services COMBINE: Event Grid notifies "new blob" → Function processes it → writes a command to Service Bus → workers process it with load leveling. Or Event Hubs ingests telemetry → Stream Analytics aggregates → Event Grid triggers alerts. They aren't mutually exclusive.
| The scenario says... | Answer |
|---|---|
| Orders processed exactly in order per customer | Service Bus with sessions (FIFO) |
| Remove duplicate messages from sender retries | Service Bus duplicate detection |
| One order notifies billing, shipping and CRM at once | Service Bus topic with 3 subscriptions |
| A simple, cheap queue to decouple, >80 GB | Storage Queues |
| Trigger a Function when a blob is uploaded | Event Grid → Function |
| React to Azure resource creation/deletion | Event Grid (resource events) |
| 1M IoT telemetry events/s | Event Hubs |
| Kafka apps with no rewrite | Event Hubs (Kafka endpoint) |
| Several teams re-read the same stream at their own pace | Event Hubs consumer groups |
| Messaging with network isolation and zones | Service Bus Premium + private endpoints |
Did you get this topic?
Test what you just learned
An order system requires: (1) each customer's orders must be processed in the exact order they were sent, (2) client retries must not produce duplicate orders, (3) orders that fail repeatedly must be set aside for analysis without blocking the queue. Which service meets all three requirements?
Put what you learned to the test with original AZ-305 exam questions.
Start AZ-305 mock examUnlimited mock exams with the Pro plan
Log in to track your progress.