【发布时间】:2019-10-10 20:29:49
【问题描述】:
我们有一个重型 azure 函数,它使用 eventHub 触发器绑定从 eventHub1 读取数据,进行一些处理并写入另外 2 个 eventthubs(eventhub2 和 eventthub3,具体取决于转换逻辑)。
eventHub1(12 分区)在某一时刻有 2 亿条消息,但是该函数无法扩展以处理整个负载。由于 7 天的保留政策,它在 7 天内只能处理 40% 的负载,最终剩余的消息(1.2 亿条)在 hub 中死亡(未处理)。
6 天前就扩展问题与 MS 创建了支持票证。到目前为止,我们还没有收到他们任何有价值的回复。
想把它介绍给这里的 azure 专家,看看你们过去是否有任何建议或遇到过类似的问题。如果您需要有关扩展问题的更多详细信息,我将非常乐意提供。
- Function is on consumption plan.
- EventHub namespace is on standard tier.
- All the hubs has 12 partitions each.
- MS Document says function would max have n+1 instance, where n = #of partitions.
However from live metrics I could see function running on 27 servers instances max.
【问题讨论】: