gpt4 book ai didi

在消费模式下以批量大小 1 运行的 Azure 函数仍并行运行

转载 作者:行者123 更新时间:2023-12-02 08:02:46 25 4
gpt4 key购买 nike

this documentation ,我正在使用 Azure 函数消耗计划,并尝试限制队列触发函数之一的并行性,以便一次仅运行一个实例:

{
"queues": {
"batchSize": 1
}
}

队列是 Microsoft 存储帐户的一部分,而不是服务总线。

但是,我的问题是,如果队列中同时有多个项目,该函数仍在并行运行。我阅读了上面文档的细则:

If you want to avoid parallel execution for messages received on one queue, you can set batchSize to 1. However, this setting eliminates concurrency only so long as your function app runs on a single virtual machine (VM). If the function app scales out to multiple VMs, each VM could run one instance of each queue-triggered function.

由于我使用的是消耗计划,我如何知道函数应用程序是在单个虚拟机上还是在多个虚拟机上运行?如何成功将该函数的批量大小限制为 1?

最佳答案

在消耗计划中,单个功能应用最多只能扩展到 200 个实例。不过,单个实例一次可能会处理多个消息或请求,因此并发执行的数量没有设置限制

此外,当您使用消耗计划时,会根据传入事件的数量动态添加和删除 Azure Functions 主机的实例。

由于您想限制其中一个队列触发函数的并行度,因此我建议您可以使用Azure App Service Plan来实现。

更多详情可以引用这个article .

关于在消费模式下以批量大小 1 运行的 Azure 函数仍并行运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52279363/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com