In case you use the ScheduledEnqueueTimeUtc property to delay message posting, I was wondering where the message is stored before being sent to the queue? Because if you have 2 instances of your Web / Worker role, what happens?
- you create a message, and one of the instances stores it as a cache? Or is it like an instance that caches it?
Two scenarios: 1. - InstanceA exposes a message in its cache, waiting for it to be queued - InstanceA does not work for any reason. - The message is lost forever.
- Both instances contain it.
- Instances of A and B are included. The message is sent twice to the queue.
In both cases, it seems that the solution is not reliable.
source share