我正在使用azure服务总线订阅和发送订单和获取订单的主题。我们有一个Windows应用程序,它使用来自azure服务总线订阅的web api来获取订单。
假设用户登录并获得5个订单。如果用户从Windows应用程序注销,我们将解锁来自Azure服务总线的消息。如果用户在5分钟或更短时间后再次登录,那么我们无法从天蓝色服务总线获得所有订单。它有时会像3或4一样。
任何人都可以帮我解决这个问题,为什么我没有再收到所有5个订单。我正在使用subscriptionclinet的ReceiveBatch方法来提取消息。
答案 0 :(得分:0)
我怀疑你在这里遇到了送货计数问题。假设我正确理解了您所说的内容,Windows应用程序会以PeekLock
模式提取消息。处理完邮件后,即可完成邮件。否则,退出应用程序后,您将放弃这些消息。如果您没有处理消息并且用户退出,则会在DeliveryCount
增加时放弃该消息。一旦DeliveryCount
超过实体的最大设置,该消息就会被破坏,并且不再被传递。
MaxDeliveryCount