使用 Cloud run 而不是 Cloud Functions 会受益吗?它在 GCP 中的什么位置?

Seb*_*min 3 firebase google-cloud-platform google-cloud-functions google-cloud-run

我使用 Cloud Functions 来满足我的大部分后端需求。Cloud Run 为现有的 Cloud Functions 用户提供了哪些额外的好处?两者都是托管的,具有自动缩放功能,处理 HTTP 并在 GCP 中运行。

Cloud Run 适合Google Cloud Platform 的哪个位置?

GCP 堆栈

参考资料:GCP 解释 - 中

Dou*_*son 5

Cloud Functions 服务器实例以串行方式处理请求,这是不可配置的。Cloud Run 实例并行处理请求每个实例的并行度级别是可配置的。如果您了解如何最好地配置服务器实例,并考虑到您部署的代码的性能特征,那么这可能会为您节省资金。

Cloud Functions 要求您从提供的不可配置的语言和运行时配置中进行选择。Cloud Run 允许您运行所需的任何类型的后端配置,假设它只是在端口 8080 上公开一个 HTTP 端点。

Cloud Functions 提供这些选定的语言和运行时配置,除了部署针对其中一种配置的代码外,您无需执行任何其他操作。Cloud Run 要求您提供用于建立运行时环境的 docker 配置(这是更多工作)。

Cloud Functions 可让您对来自各种 Cloud 和 Firebase 产品的各种事件建立触发器。Cloud Run(目前)可以通过 HTTP 请求、PubSub 推送和少数云产品(例如 Cloud Scheduler 和 Cloud Tasks)触发。

Cloud Functions 要求您仅在提供的托管环境中运行您的代码。Cloud Run 允许您获取 docker 配置并在支持docker 的任何地方运行它,包括GKE,您可以在那里获得对服务器实例的更多控制。