Firebase Cloud Functions min-instances配置未生效问题咨询
Firebase Cloud Function最小实例配置不生效排查
问题描述
Firebase在2021年9月宣布支持配置Cloud Function自动扩缩容规则,可设置固定数量的实例始终处于运行状态,相关说明可参考Firebase官方文档。
尝试配置该功能时始终无法生效:首先在Google Cloud Console中设置了最小实例数,可参考Cloud Console配置截图。完成配置后预期该Cloud Function会始终保持1个实例运行,但函数指标显示实例仍会被缩容到0,可参考Cloud Functions活跃实例指标截图。
目前配置看起来被系统忽略,Google Cloud Console界面已显示最小实例数设置为1,说明配置已被系统识别但未生效,想确认该功能是否仅在特定区域可用?
另外也尝试通过Firebase SDK for Cloud Functions配置最小实例数,相关SDK可在npm官方仓库搜索firebase-functions获取,得到的结果一致,配置仍然被忽略。
排查方案
- 确认计费计划:最小实例功能仅支持Blaze(即用即付)计费计划,免费Spark计划下即使控制台显示配置成功,规则也不会实际生效。
- 确认运行环境与SDK版本:若使用第一代Cloud Functions,需保证firebase-functions SDK版本≥3.20.0,低版本会静默忽略
minInstances配置;若使用第二代Cloud Functions,需确认配置参数为minInstances而非旧版本的keepWarm参数。 - 确认配置生效范围:如果是单函数单独配置,需确认配置绑定的是目标函数而非全局默认规则;如果是通过firebase.json配置全局规则,需确认没有在单函数的代码逻辑中覆盖该参数。
- 确认区域限制:目前所有Google Cloud正式开放的Cloud Functions运行区域都支持最小实例配置,不存在区域可用性限制,可排除该因素影响。
- 确认指标统计逻辑:
Active Instances指标仅统计正在处理请求的实例数量,预留的闲置最小实例不会被计入该指标,可切换到Instance Count指标查看总实例数,验证预留实例是否正常运行。 - 确认配置同步状态:修改最小实例配置后需要重新部署函数生效,通过控制台修改的配置需要等待5-10分钟的同步周期,期间的指标数据不能代表配置最终生效结果。
内容的提问来源于stack exchange,提问作者Professor Hackfred
相关产品推荐
相关产品推荐

