Skip to content
返回云服务

GCP Cloud Functions

事件驱动 serverless 函数 — HTTP、Cloud Storage、Pub/Sub、Firestore 触发。

GCP进阶

为什么

Cloud Functions 事件运行无服务器 — HTTP、Storage、Pub/Sub、Firestore。200 万调用/月免费。

自动伸缩、按 100ms 付费。Gen 2 用 Cloud Run 底层。

何时使用

事件驱动时用:webhook、文件处理、DB 触发、定时任务。容器用 Cloud Run、Web 应用用 App Engine。

如何做

1. 部署 — gcloud functions deploy myFn --runtime nodejs20 --trigger-http 2. HTTP 触发 — 公开 URL、返回响应 3. 事件触发 — --trigger-bucket、--trigger-topic、--trigger-firestore 4. Gen 2 — --gen2、用 Cloud Run、更多功能(并发、超时) 5. 环境变量 — --set-env-vars KEY=VAL 6. 密钥 — Secret Manager、挂载为 env 7. 超时 — 最多 60 分(Gen 2)、9 分(Gen 1) 8. 内存 — 128MB-8GB、影响成本

示例

gcloud functions deploy processUpload \ --runtime nodejs20 --gen2 \ --trigger-bucket my-bucket \ --entry-point processUpload \ --set-env-vars BUCKET=processed \ --memory 512MB --timeout 120s // index.js export const processUpload = async (event) => { const { bucket, name } = event.data; console.log(`处理 ${name} 从 ${bucket}`); // 调整图像、写到 processed bucket };

常见问题

  • ⚠Gen 1 vs Gen 2 — Gen 2 是 Cloud Run、更多功能、新项目优先
  • ⚠冷启动 1-3 秒 — Gen 2 用 min-instances 降延迟
  • ⚠60 分超时上限 — 更长用 Cloud Run job 或 Cloud Composer

最佳实践

  • ✓用 Gen 2 — 底层 Cloud Run、更多功能、更好性能
  • ✓生产设 min-instances — 避免冷启动、成本更高但稳定
  • ✓用 Secret Manager — 密钥非 env、IAM 控制

常见问题解答

什么是GCP Cloud Functions?它解决什么问题?

事件驱动 serverless 函数 — HTTP、Cloud Storage、Pub/Sub、Firestore 触发。 它可帮助开发者在不自建基础设施的前提下完成部署、存储与扩展,是云服务选型的核心参考。

如何在 5 分钟内上手GCP Cloud Functions?

两步即可跑通:① 部署 — gcloud functions deploy myFn --runtime nodejs20 --trigger-http;② HTTP 触发 — 公开 URL、返回响应。建议先用免费套餐验证流程,再接入生产环境。

GCP Cloud Functions 最容易踩的坑是什么?

最高频的问题是:Gen 1 vs Gen 2 — Gen 2 是 Cloud Run、更多功能、新项目优先。建议在上线前用 checklist 逐项核对,并在 CI 中加入策略与配置扫描。

GCP Cloud Functions 的最佳实践有哪些?

GCP Cloud Functions 的最佳实践包括:用 Gen 2 — 底层 Cloud Run、更多功能、更好性能;生产设 min-instances — 避免冷启动、成本更高但稳定;用 Secret Manager — 密钥非 env、IAM 控制。其中首条「用 Gen 2 — 底层 Cloud Run、更多功能、更好性能」应作为团队默认规范写入 IaC 模板。

GCP Cloud Functions 如何控制成本与避免账单意外?

三招防超支:① 为所有资源打 env/team 标签并启用账单告警;② 用预算阈值触发 Slack/邮件通知;③ 定期用 Cost Explorer 审查闲置资源并清理。GCP Cloud Functions 多数提供免费套餐,先在免费额度内验证再放量。