Azure服务总线:消息队列中正在处理重复的消息

时间:2019-03-01 09:57:54

标签: azure azureservicebus asp.net-core-2.1

我正在使用天蓝色服务总线。实际上,我的服务总线队列正在处理一条消息3次。我的信息锁定时间是5分钟。每封邮件最多要处理2分钟,但我不知道为什么队列选择相同的邮件并发送至处理,而重复的邮件仅在5分钟后才能处理。

锁定时间为5分钟。

任何人都可以帮助我。

谢谢。

1 个答案:

答案 0 :(得分:0)

使用Azure Service Bus时,接收方未对消息进行操作时,将重新处理消息。一项动作将是完成,推迟,取消字眼。如果您没有这些,则经纪人一方的LockDuration过期后,该邮件将重新发送。不等待LockDuration超时而重新发送消息的其他情况是放弃消息。然后,下一个对新消息的请求立即提取一条消息。

您应该共享代码以提供足够的上下文。可以使用MessageReceiver.ReceiveAsync()或使用用户回调API手动接收消息。对于第一个选项,您必须处理消息(例如,完成)。对于另一个选项,有一个配置API,您可以选择退出自动补全功能,并且需要手动完成传递到用户回调中的消息。