Cloud Scheduler 简介

您可以使用 Cloud Scheduler 设置工作单元日程安排,以便在规定的时间或者按一定的时间间隔执行这些任务。这些工作单元通常称为 Cron 作业。典型用例可能包括每天发送一封报告电子邮件、每 10 分钟更新一次缓存数据或每小时更新摘要信息一次。

使用 Cloud Scheduler 创建的每个 Cron 作业都会根据指定时间表发送到“目标”,并在其中完成该任务的工作。目标必须是以下类型之一:

Cloud Scheduler 旨在提供“至少一次”交付;也就是说,作业会在每个计划的执行作业至少运行一次。在极少数情况下,作业可能会在与时间表的单个实例关联的情况下多次运行,因此您的代码必须确保重复执行不会产生任何有害的副作用。您的目标应该是幂等

您可以使用 Cloud 控制台gcloud 命令行工具创建 Cron 作业。

支持的区域(按目标划分)

如果您的目标是 HTTP/S 端点Pub/Sub 主题,则 Cloud Scheduler 可用于 Cloud Scheduler 的所有受支持的 Google Cloud 区域

如果您的目标是位于当前项目中的 App Engine 应用,请执行以下操作:

  • 只能在项目的 App Engine 区域中创建以 App Engine 为目标的 Cloud Scheduler 作业。

  • 一个 Google Cloud 项目只能包含一个 App Engine 应用,并且应用创建后,App Engine 应用所在的区域将无法更改。

  • App Engine 是区域级的,这意味着运行您的应用的基础架构位于特定区域中。如果要将计算和作业分布到多个区域,则应改为定位 HTTP/S 端点或 Pub/Sub 主题。

  • 如果您不使用 App Engine 作为目标,则无需部署 App Engine 应用,并且可以停用任何现有的 App Engine 应用。