Azure Service Bus is a fully managed enterprise message broker for reliable asynchronous communication between services. Queues: one sender, one receiver (point-to-point). Topics + subscriptions: one sender, many receivers with SQL filter-based routing. Messages are durable — stored until processed. Key features: message sessions (FIFO per session), dead-letter queue (DLQ) for failed messages, message lock renewal, scheduled delivery, and defer. AMQP 1.0 protocol; SDKs for .NET, Python, Java, JavaScript.
Peek-lock processing with retry and dead-letter.
Messages in the DLQ are ones your service couldn't process after 10 attempts. They're a signal of schema mismatches, missing dependencies, or unhandled exceptions. Alert when DLQ count > 0.
Without sessions, parallel consumers process messages out of order. With sessions (sessionId='order-42'), one consumer processes all messages for that order in order. Essential for order lifecycle, document processing, and multi-step workflows.
Queue: multiple workers competing to process messages (horizontal scaling of consumers). Topic: one message delivered to MULTIPLE independent subscriptions with different filters. Pick based on whether multiple recipients need the same message.
Sign in to share your feedback and join the discussion.