We have an Azure Function which consumes messages from a Service Bus topic. This 'EntityUpdated' topic holds messages which record changes to an entity.
It's therefore essential that these messages are processed in the order they appear on the bus.
The problems we have are:
- the function will scale, and therefore competing consumers will process some messages quicker than others
- we don't want to remove a message from the queue if we fail to process it
What's an appropriate solution we can undertake?