Azure队列中基于租约和基于锁的独占访问之间的区别

out*_*son 7 azure azure-storage azure-queues azureservicebus azure-servicebus-queues

我知道(阅读msdn文档[此处])Windows Azure存储队列对邮件使用基于租约的独占访问策略,Azure Service Bus Queues使用基于锁的存储队列.在两者中我都可以设置锁定/租用的最大持续时间.那么,这两种方法之间最重要的区别是什么?有人可以提供明确/简短的例子吗?谢谢.

1 https://msdn.microsoft.com/en-us/library/azure/hh767287.aspx

nop*_*nop 0

我的理解是基于租约有时间限制,而基于锁则没有。

例如,租约的持续时间可以是30s长,在当前用户释放该租约或持续时间到期之前,其他人无法获得租约来访问该资源。但30岁之后,任何人都可以获取并访问该资源。(当然,您可以将持续时间设置为无限。)

对于基于锁来说,如果当前用户不释放锁,任何人都无法获得锁。

  • 感谢@nop 的回复,但我认为这不是真的。服务总线队列使用基于锁的机制,并且还具有锁定超时期限(默认为 60 秒)。 (10认同)