TL;DR: Most workflows are better off accepting out-of-order delivery and modeling the business process to cope with it. If strict order is a real requirement, however, Azure Service Bus sessions are only the start. A delayed retry can let later messages overtake the failure. Preserving processing order then requires a hold-back that records the failed message in session state and refuses to process the backlog until that message succeeds. This post starts where my earlier Azure Service Bus...




