1

假设我的消费计划中有一个 Azure 函数应用程序正在侦听 Azure 事件中心。根据文档,如果没有传入事件,函数应用实例的数量可以缩减到 0。据我了解,每个函数应用程序实例还实例化一个事件处理器主机,该主机正在侦听事件中心的分区。但如果实例数为 0,那么谁在监听事件中心以确定是否必须处理消息?函数实例数为0时是否存在Event Processor Host?这是到目前为止我想要完成的关于 Azure Functions + Azure Event Hubs 的(不完整的)图片: 在此处输入图像描述

在上述文档中,我还阅读了有关规模控制器的信息,该控制器显然会在需要时添加新的功能主机实例。这是否意味着,规模控制器也必须侦听事件中心?缩放控制器位于何处,它是我可以在 Azure 中创建的函数应用资源的一部分,还是托管在 Azure 的隔离部分中,与我的函数应用的存在无关?

编辑:根据答案采用图像。

4

1 回答 1

2

这就是 Azure 上的托管函数运行时正在为您做的事情。它会为您侦听事件中心(或服务总线或其他支持的触发源) - 您无需为该计算付费。一旦它检测到新消息,它将启动您的函数的一个或多个实例——此时只有计费开始。

在此处输入图像描述

来源

如果您在其他地方运行 Functions,例如在 k8s 集群中,您必须自己托管规模控制器并使其始终运行。

于 2021-02-25T13:05:01.520 回答