【发布时间】:2015-02-23 01:29:08
【问题描述】:
据我了解,eventhub 每秒可以处理/摄取数百万条消息。为了调整摄取,我们可以使用吞吐量。
更高的吞吐量 = 更多的摄取能力。
但在接收/消费端,您最多可以创建 32 个接收器(因为我们可以创建 32 个分区,一个分区可以被一个接收器消费)。
基于上述,如果一条消息需要 100 毫秒来处理,那么一个消费者每秒可以处理 10 条消息,而 32 个消费者每秒可以处理 32*10= 320 条消息。
我怎样才能让我的接收器消耗更多的消息(例如,每秒 5-10k)。
1) 我必须在 ProcessEventsAsync 中异步处理消息。但在这种情况下,我将无法维持订单。
2) 或者我必须请求 Microsoft 允许我创建更多分区。
请指教
【问题讨论】:
-
嗨@Pragmatic,有 32 个分区和 10 个 TU,我可以在 10 分钟内收到 6 个缺少消息。观察到,使用 20 TU 它减少到 5 分钟。但是增加TU可能最终会支付更多的钱。如果您已经解决了这个问题,请分享您的 cmets。因为我希望在 1 分钟或更短的时间内处理完所有 6 条缺失消息。
标签: azure autoscaling azure-eventhub