【发布时间】:2019-07-23 08:08:27
【问题描述】:
我正在开发 azure 服务总线。实际上,我的服务总线队列正在处理一条消息 3 次。我的消息锁定时间是 5 分钟。每条消息最多处理 2 分钟,但我不知道为什么队列会选择相同的消息并发送到处理,而重复的消息仅在 5 分钟后才被选择。
锁定持续时间为 5 分钟。
谁能帮帮我。
提前致谢。
【问题讨论】:
标签: azure azureservicebus asp.net-core-2.1
我正在开发 azure 服务总线。实际上,我的服务总线队列正在处理一条消息 3 次。我的消息锁定时间是 5 分钟。每条消息最多处理 2 分钟,但我不知道为什么队列会选择相同的消息并发送到处理,而重复的消息仅在 5 分钟后才被选择。
锁定持续时间为 5 分钟。
谁能帮帮我。
提前致谢。
【问题讨论】:
标签: azure azureservicebus asp.net-core-2.1
使用 Azure 服务总线,当接收方未对消息执行操作时,将重新处理消息。一个动作将是完成、推迟、死信。如果你没有这些,一旦代理端的LockDuration 过期,消息将被重新传递。在不等待LockDuration 超时的情况下重新传递消息的其他情况是放弃消息。然后,下一个新消息请求会立即获取一条消息。
您应该共享您的代码以提供足够的上下文。可以使用MessageReceiver.ReceiveAsync() 或使用用户回调 API 手动接收消息。对于第一个选项,您必须操作消息(例如完成)。对于另一个选项,有一个配置 API,您可以在其中选择退出自动完成,并且需要手动完成传递给用户回调的消息。
【讨论】: