服务总线中的队列消息计数

In queue message count in service bus

我想知道是否有为服务总线队列或主题定义的任何消息入队限制。

假设我已经在 azure iot hub 上创建了一个设备。现在我正在向这个设备发送 c2d 消息。如果此设备没有可用的接收器。然后它有能力在队列中保存 50 条消息。在这个极限之后。它将丢弃所有发送给它的 c2d 消息。

我只想确认在服务总线队列或主题中创建了相同类型的场景。

服务总线队列或主题可能不存在这种情况。但是我有些困惑。

我不知道 ASB 是否支持这种开箱即用的配额。我建议采用不同的方法:在您的队列或主题上使用 DefaultMessageTimeToLive 属性(在创建它们时设置)。这将允许您自动丢弃未及时处理的旧的、过时的消息。或者,您可以在单个消息的 BrokeredMessage 上设置 TimeToLive

或者,您也可以在队列/主题上设置 MaxSizeInMegabytes 来限制它们的大小,但我认为基于 TTL 的方法会更好。

I want to know that is there any message inqueue limit define for service bus queue or topic.

是的,大小限制为 queue/topic(在创建 queue/topic 时定义)。

The size of queue/topic is can be 1, 2, 3, 4 or 5 GB. If partitioning is enabled, the maximum queue/topic size is 80 GB.

如果超出限制,

incoming messages will be rejected and an exception will be received by the calling code.

更多信息您可以参考Service Bus quotas