Azure 服务总线队列分区队列 AutoRenewTimeout

Azure Service Bus queue partitioned Queue AutoRenewTimeout

我想了解 AutoRenewTimeout 分区队列与非分区队列是否不同。我有两个理由在这里问这个问题:

1) 他们在文档中似乎有不同的解释:

分区队列 - link

Gets or sets the time needed before the session renew its state.

非分区队列 - link

Gets or sets the maximum duration within which the lock will be renewed automatically. This value should be greater than the longest message lock duration; for example, the LockDuration Property.

2) 在我的代码中启用前者后,锁定持续时间 = 4 分钟且 AutoRenewTimeout = 12 分钟,我发现工作效率大大降低。

它们在两种上下文中有不同的含义吗?

第一个 link 用于 Message Session 功能。对于消息会话,只有一个实例可以处理来自同一会话的消息。这可以解释为什么您会看到性能下降。第二个选项不利用消息会话,因此消息被所有竞争消费者使用,而不仅仅是一个消费者。