11

我知道(在此处阅读 msdn 文档)Windows Azure 存储队列对消息使用基于租约的独占访问策略,而 Azure 服务总线队列使用基于锁的策略。在两者中,我都可以设置锁定/租赁的最长持续时间。那么,这两种方法之间最重要的区别是什么?有人可以提供一个清晰/简短的例子吗?谢谢。

4

2 回答 2

0

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

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

对于基于锁的,如果当前用户没有释放锁,那么没有人可以得到锁。

于 2015-06-24T18:26:02.300 回答
0

使用租约管理 Windows Azure 中的并发性

@nop 的回答是正确的。

租约具有自动超时功能,因此如果持有资源的服务死亡,资源在设置超时后被释放,避免了死锁的情况。他们也有更新能力。

于 2018-07-09T06:02:23.210 回答