在 Google Cloud 上托管应用

Google Cloud 提供了各种应用托管方案。查看下列图表,了解哪种方案可满足您的需求。


使用场景

不确定如何入手?查看下面一些常见的场景。
HTTP 服务和后端应用
Web 框架、微服务
示例:
  • Flask
  • Django
  • Express.js
  • Symfony
  • Spring Boot
App Engine 标准环境
  • 扩缩以满足突发需求
  • 用多少,付多少
  • 支持 API 端点
Google App Engine 文档
事件驱动的数据处理应用
处理用户生成的数据和事件
示例:
  • 在 Slack 频道上发表评论,以回复 GitHub 提交事件
  • 统计分析
  • 图片缩略图生成
Cloud Functions
  • 专为事件驱动的工作负载而设计
  • 扩缩以满足突发需求
  • 最小配置
Google Cloud Functions 快速入门
基于容器的应用和服务
多云基础架构的业界标准包装
示例:
  • 自定义运行时环境,例如 Rust、Kotlin、C++ 和 Bash
  • 使用 Python 2.7、Java 7 等语言的旧版 Web 应用
Cloud Run(全托管式)
  • 支持业界标准的 Docker 容器
  • 自动扩缩容器化应用
  • 自定义二进制文件和系统依赖项
  • 支持 API 端点
Cloud Run(全托管式) 快速入门
本地和单体式工作负载
通过原始计算满足现有基础架构要求
示例:
  • 关系型数据库、SAP HANA
  • CRM 系统
  • 旧版 ERP 系统
Compute Engine
Google Compute Engine 教程
自托管的可扩缩基础架构
自行管理的托管及无服务器可扩缩性
示例:
  • 需要自定义硬件和软件(操作系统和 GPU 等)的容器化应用
  • 现有的容器化无状态应用
  • Kubernetes Engine 上可从缩减至零受益的应用
Cloud Run for Anthos on Google Cloud
  • 业界标准的 Docker 容器包装
  • 可针对旧版工作负载和配置灵活配置
  • 可扩缩以满足需求
Cloud Run for Anthos on GCP 快速入门
测试版
测试版软件不提供任何服务等级协议 (SLA),可能不适合生产工作负载。

托管方案

许多工作负载都有特定的技术要求。以下平台按抽象化程度排序。
Compute Engine Kubernetes Engine (GKE) Cloud Run for Anthos on Google Cloud Cloud Run(全托管式) App Engine 柔性环境 App Engine 标准环境 Cloud Functions
部署格式
虚拟机映像
集群
容器
容器

应用

容器

应用
函数
自定义网址
缩减至零
~
1
免费层级
永久性磁盘
2
Websocket
~
3
测试版
运行任意语言
请求超时
15 分钟
15 分钟
60 分钟
1 分钟
9 分钟
后台处理
~
4
TPU/GPU 访问
~
3
VPC 连接
测试版
测试版
1
Cloud Run for Anthos on Google Cloud 可将 pod 数缩减至零。每个集群的节点数不能缩减至零,且即使没有请求,也会对这些节点收费。
2
GKE 上的容器实例在关停后不会保留数据。不过,Compute Engine 永久性磁盘可以挂接到 GKE 上的容器实例
3
虽然在技术上可以通过 Cloud Run for Anthos on Google Cloud 使用 Websocket 和访问 TPU/GPU,但它们不受官方支持。
4
App Engine 标准环境支持在基本和手动扩缩模式下执行后台任务。
测试版
测试版软件不提供任何服务等级协议 (SLA),可能不适合生产工作负载。

关键词

部署格式

您的代码在部署到给定平台时是如何打包的?

  • 虚拟机映像 - 整个文件系统(包括底层操作系统)的快照。
  • 容器 - 与底层操作系统隔离的可移植的跨平台文件系统。
  • 应用 - 包含在一个或多个使用情形的目录中的一项服务。
  • 功能 - 单独的代码段,每个代码段对应一个使用情形。

自定义网址

您是否可以创建多层网址路径(如 /abc/def)且/或使用自己的域名

永久性磁盘

实例关停时是否可以保存磁盘状态,或者是否必须将长期数据存储在实例外部

缩减至零

此产品是否可以缩减至零实例,并避免在无请求期间向我收取费用?

Websocket

此产品是否支持 Websocket 协议?

运行任意语言

此产品是否可以运行以任意编程语言编写的代码?

请求超时

平台等待应用代码响应的最长时间是多少?

后台处理

此产品是否可以在请求期间之外运行正在进行的后台操作?

使用 GPU 和 TPU

此产品是否支持对已针对 GPU/TPU 进行了优化的工作负载执行硬件加速

VPC 连接

此产品是否可以访问 Virtual Private Cloud 内的资源?