Azure

The queue was in order. Your workers were not.

A customer paid $120 for an item they removed, and Service Bus did nothing wrong.

What you'll learn

  • That FIFO delivery and FIFO processing are different things, and concurrency is what separates them
  • Why SessionId is a partition-key choice, not a yes/no on ordering
  • The one setting that silently gives back the race after you enable sessions
Azure 12 steps 50 seconds views

Was this useful?

Share

Understand it one step at a time

The short runs these in order in about 50 seconds. Here they are written out — pick any step to jump the short straight to it.

1 Step 1 of 12

Three events, one cart, in order

Add an item, remove it, then check out — three events on one cart, published to Service Bus in that exact sequence, a second apart.

Frequently asked questions

Does Azure Service Bus guarantee that messages are processed in order?
It guarantees delivery order within a session, not processing order. If multiple workers pull messages from the same session concurrently, they can finish out of the order they were delivered in — delivery order and processing order are separate guarantees.
What does SessionId actually control?
It's a partition-key decision, not a simple ordering toggle — messages sharing a SessionId are guaranteed to go to the same session-aware receiver, which is what makes in-order processing possible. Get the concurrency setting per session wrong and you can silently reintroduce the race sessions were meant to prevent.

Free app · no app store

These are built for a phone

Every short is drawn at full portrait height, the shape a phone already is. Installed, it opens full-bleed with no address bar across the top — and the whole library reads offline.

How it works

Read deeper on Azure

Twenty seconds gets the shape of an idea across. These go into how it behaves in production.

More shorts

Get new posts by email

New technical articles, Azure AI and GitHub Copilot updates, and upcoming events. No spam, unsubscribe anytime.

navigate open