2014-10-29 124 views
1

Azure是否对收到的批次项目有某种限制?下面的代码只检索450级的消息尽管被要求更多:Azure服务总线队列一次只能接收450条消息

QueueConnector.MyQueueClient.ReceiveBatch(1000, new TimeSpan(0, 0, 10)); 

我试过增加倍,但它不会有任何影响 - 450,每一次。这似乎是批量接收的Azure SDK文档中推荐的方式。

注意:队列中有成千上万个项目。

+0

再看看它。你确定你正在访问正确的队列吗?你在哪里放弃这些消息? – 2014-10-29 18:23:59

+0

100%肯定它是正确的队列。尽管'1000'是硬编码的,我可以在每次请求时都能看到每次450个点的数据。我现在的解决方法是继续接收,直到实际收到请求的号码。 – 2014-10-29 19:03:47

+0

你用什么样的应用程序来调用它?网络工作?工人角色? Web API? – 2014-10-30 18:05:06

回答

1

传递给ReceiveBatch的计数是一个上限,文档中也提到了这一点,所以这是预期的行为。 Service Bus将根据消息可用性或批量大小发布批处理。批量上限为256 kB,用于发送和接收。对于SendBatch,这也在文档中说过。

+0

我每次都得到256条消息。很奇怪。我知道我的消息不是每个1K。 – KingOfHypocrites 2015-05-25 00:05:07

相关问题