Reputation: 1122
We are looking at utilising the capability of Azure Service Bus to delay the processing of messages sent to Topics and Queues using the ScheduledEnqueueTimeUtc
field as per this MS documentation. However, we want to confirm that delayed messages will have the same guarantees around delivery that non-delayed messages have and that delayed messages won't get lost.
Obviously, heavy load may mean that delayed messages may not be processed exactly when they are scheduled for, but they will be enqueued and eventually processed.
Upvotes: 0
Views: 376
Reputation: 985
You are guarantee that the message will get enqueued, not sent. From this doc
Message enquing time does not mean that the message will be sent at the same time. It will get enqueued, but the actual sending time depends on the queue's workload and its state.
If you want predictable and performance on the worload you should consider using ServiceBus with Premium SKU. Then it will up to you to choose the size depending on your workload.
Also you will need to tune your receiver and sender configuration (Protocol, PrefetchCount, ConcurrentCalls...) depending on your scenario.
Upvotes: 1