The Azure documentation
https://learn.microsoft.com/en-us/azure/service-bus-messaging/service-bus-azure-and-service-bus-queues-compared-contrasted
and different articles
https://jaliyaudagedara.blogspot.com/2021/04/azure-service-bus-handling-fifo-using.html
How do you support FIFO message ordering with Azure Service Bus partitioned queues/topics?.
https://devblogs.microsoft.com/premier-developer/ordering-messages-in-azure-service-bus/.
https://connectedcircuits.blog/2020/03/19/ensuring-ordered-delivery-of-messages-using-azure-functions/.
are telling that Sessions can be used to maintain FIFO order when there are multiple receivers listening to the same Queue.
However Don’t assume message ordering in Azure Service Bus article (written in 2014) and post by the same author Ben Morris https://stackoverflow.com/a/29037645/52277 claims that Sessions are not enough of a guarantee.
This isn’t enough to guarantee the order in which events are processed. For example, when a consumer reads a message using the default PeekLock mode it takes an exclusive lock for a set period of time. If this lock times out then the message is returned to the queue. This means it could be processed in the wrong order or even more than once.
It is sound like a valid concern.
Does it applicable for modern Azure Service Bus? If yes, what are workarounds?