使用 Windows Azure 队列锁定队列中的消息



我正在使用Windows Azure Message队列。我想知道是否有一种方法可以在收到消息时锁定队列中的消息?

当您从队列中检索邮件时,它会标记为不可见,直到您将其删除(或达到超时期限)。当它被标记为不可见时,没有其他人看到该消息。我想这就像你将要得到的"锁定"一样接近。

如果在处理过程中,您觉得需要更多时间,则可以修改消息并延长不可见超时。

您确实需要关注 Windows Azure 队列的幂等操作:假设任何给定的消息可能被处理多次:

  • 处理超出了隐形超时,因此其他一些工作线程会收到消息
  • VM 实例在处理消息时崩溃,导致它重新出现在队列中并再次得到处理

最新更新