升级Node14到16后批量部署Firebase云函数触发Cloud Build配额超限
问题核心原因
升级Node.js运行时属于云函数全局配置变更,会触发所有云函数全量重新构建,批量部署时短时间内触发了Cloud Build服务的每分钟创建请求配额上限,才会出现部署失败的问题。以下是可落地的解决方法:
解决方法
- 方法1:调低Firebase部署并发数(最快生效)
Firebase CLI支持通过--concurrency参数控制同时部署的云函数数量,你可以直接修改package.json中的部署命令,调低并发值(建议设置为2~3,可根据自身配额阈值调整):
"deploy-dev": "firebase use dev && firebase deploy --only functions --concurrency 2"
调整后重新运行批量部署命令即可,降低并发后不会短时间触发大量构建请求,自然不会触发配额限制。等本次全量部署完成后,后续日常增量部署可以把并发参数调回默认值,不影响部署速度。
- 方法2:分批次批量部署
你也可以手动将需要部署的云函数分成多个小组,一次部署一组,无需逐个部署单函数,示例命令:
firebase use dev && firebase deploy --only functions:chatFieldDisableOnce,functions:chatFieldReqUpdateOnce,functions:contactYello
每次部署2~3个函数,直到所有函数部署完成即可。
- 方法3:申请提升Cloud Build配额
如果你的项目云函数数量较多,后续也经常需要全量部署,可以前往Google Cloud控制台的配额管理页面,搜索cloudbuild.googleapis.com服务对应的「Build Create requests per minute」配额,提交提升配额的申请,审核通过后即可支持更高的并发构建请求。
内容的提问来源于stack exchange,提问作者BIS Tech
相关产品推荐
相关产品推荐

