DeliveryCount在Microsoft Azure ServiceBus中从消息到消息递增

问题描述 投票:0回答:1

我正在使用Microsoft Azure Service Bus for .NET Standard。

我正在使用PeekLock读取的多个使用者(MessageReceiver的多个实例)从Service Bus队列中读取消息。

我没有完成消息的接收操作,以便从队列中删除它们。

问题是第二条消息的deliveryCount基本上是第一条消息的deliveryCount(通常是1)+ 1,所以2.不知何故,deliveryCount从一条消息传递到另一条消息。当我收到具有相同接收器的两个消息(_messageReceiver1或_messageReceiver2)时,不会发生此问题。

msg1 =等待_messageReceiver1.ReceiveAsync(80);的WriteLine(msg1.SystemProperties.DeliveryCount);

msg2 =等待_messageReceiver2.ReceiveAsync(80);的WriteLine(msg2.SystemProperties.DeliveryCount);

在超过门户网站的最大传送次数之后,由于传送计数从一个消息传递到另一个消息,所有我的消息都被发送到DLQ,即使我是否尝试读取它们。

azure azureservicebus servicebus
1个回答
0
投票

您应该与Topic Subscriptions一起为多个消费者使用。多次接收消息将增加消息的传递次数。一旦计数增加到队列的最大传递计数,消息将是moved to Dead Letter Queue

© www.soinside.com 2019 - 2024. All rights reserved.