We have a need to process messages from an Azure Storage Queue serially, one at a time.
By default, the JobHostConfiguration.Queues.BatchSize is set to 16
And those 16 messages the WebJob pulls off the queue will be processed in parallel. Instead, we need the WebJob to process the messages serially, one at a time.
How can this be achieved?
We are currently forced to set the BatchSize to 1, which is not ideal because it introduces a lot of spin up/down time around reading from the message queue.
Clarification: We do not need to enforce first in first out, or guaranteed order processing, just one at a time processing.