Cloud Run functions 版本比较

Cloud Run 函数有两个版本:

  • Cloud Run 函数(以前称为 Cloud Functions (第 2 代),可将您的函数作为服务部署在 Cloud Run 上,以便您使用 Eventarc 和 Pub/Sub 触发这些函数。
  • Cloud Run functions(第 1 代)(以前称为 Cloud Functions [第 1 代]):函数的原始版本,具有有限的事件触发器和可配置性。

我们建议您尽可能为新函数选择使用 Cloud Run 函数。尽管如此,我们还是计划继续对 Cloud Run functions (第 1 代) 提供支持。

本页介绍了 Cloud Run 函数中引入的功能,并比较了两个产品版本。

Cloud Run functions

Cloud Run 函数是 Google Cloud推出的新一代函数即服务产品。Cloud Run functions 基于 Cloud Run 和 Eventarc 构建,为 Cloud Run functions 提供了增强的基础架构和更广泛的事件覆盖范围,包括:

  • 基于 Cloud Run 构建:使用 Cloud Build 构建函数,并使用默认的 Cloud Run 执行环境将其部署为 Cloud Run 服务。这样,您就可以像自定义 Cloud Run 服务一样自定义函数。请参阅 Cloud Run 文档,了解配置服务的选项,例如内存限制环境变量等。
  • 请求处理时间更长:可以运行请求时间更长的工作负载,例如处理来自 Cloud Storage 或 BigQuery 的大量数据流。
  • 实例规模更大:可以运行更大规模的计算密集型内存中并行工作负载。
  • 改进了并发性能:可以通过单个函数实例处理多个并发请求,最大限度地减少冷启动次数并缩短延迟时间。
  • 流量管理:可以在不同的函数修订版本之间拆分流量,或将函数回滚到先前版本。
  • Eventarc 集成:原生支持 Eventarc 触发器,将 Eventarc 支持的全部 90 多个事件源都引入 Cloud Run functions。
  • CloudEvents 支持更广泛:所有语言运行时都支持业界标准 CloudEvents,从而提供一致的开发者体验。

如需了解详情,请参阅对照表

由于 Cloud Run functions 会将函数作为服务部署到 Cloud Run,因此 Cloud Run functions 与 Cloud Run 共享资源配额和限制。如需详细了解,请参阅配额

对照表

功能 Cloud Run functions(第 1 代) Cloud Run functions
映像注册表 Container Registry 或 Artifact Registry 仅限 Artifact Registry
请求超时时间 最长 9 分钟
  • 对于 HTTP 触发的函数,最长 60 分钟
  • 对于事件触发的函数,最长 9 分钟
实例规格 最多搭载 2 个 vCPU,提供最高 8GB 的 RAM 最多搭载 4 个 vCPU,提供最高 16GiB 的 RAM
并发性能 每个函数实例 1 个并发请求 每个函数实例最多 1,000 个并发请求
流量分配 不支持 支持
事件类型 直接支持来自 7 个来源的事件 支持 Eventarc 所支持的任何事件类型,包括通过 Cloud Audit Logs 提供的 90 多个事件源
CloudEvents 只有 Ruby、.NET 和 PHP 运行时支持 所有语言运行时都支持

价格

如需了解价格信息,请参阅 Cloud Run functions 价格

如果您使用 Cloud Run functions,可按如下方式查看只与 Cloud Run functions 关联的费用:

  1. 前往 Google Cloud 控制台中的 Cloud Billing 报告页面。
  2. 如果出现提示,请选择与您的Google Cloud 项目关联的结算账号。
  3. 过滤条件面板的标签下,添加标签过滤条件,将键设为 goog-managed-by,值设为 cloudfunctions

后续步骤