3

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

4

1 回答 1

11

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

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

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

  • 处理超出了不可见超时,因此其他一些工作人员收到了消息
  • VM 实例在处理消息时崩溃,导致它重新出现在队列中并再次得到处理
于 2012-06-06T21:04:13.677 回答