Firebase minInstances 被忽略

Firebase minInstances is ignored

我们的目标是为我们的 firebase 云函数设置一个最小实例数,以便能够处理意外的流量爆发。我们按照 these instructionsminInstance 计数设置为 3。部署更新后,我可以在 UpdateFunction 日志中看到 minInstance 值设置为 3。

但是,云函数仪表板中的 Active instances 计数经常低于 3(见下图)。此指标中的“活动”是否只计算正在执行的实例而不计算空闲实例?还是这实际上意味着 minInstance 值被忽略了?

由于 Cloud Functions 是无状态的,它可能会从头开始初始化执行环境,这称为 冷启动冷启动 可能会花费大量时间并可能增加应用程序延迟。为了减少冷启动的数量,Cloud Functions for Firebase 允许通过在 this document 之后指定 minInstances 来设置最小实例数。这将使指定数量的实例保持就绪或热状态,以服务不会经历冷启动的请求。

现在,在 Google Cloud Console 的 Cloud Functions 页面中,指标 Active Instances 表示当前为请求提供服务的实例数 here

设置minInstances并不意味着总是会有那么多的活动实例。最少实例保持 运行 空闲(未分配 CPU),因此不计入 Active Instances