您可以使用 Cloud Scheduler 设置工作单元日程安排,以便在规定的时间或者按一定的时间间隔执行这些任务。这些工作单元通常称为 Cron 作业。典型使用场景可能包括每天发送一封报告电子邮件、每 10 分钟更新一次缓存数据或每小时更新一次摘要信息。
使用 Cloud Scheduler 创建的每个 Cron 作业都会发送到目标 根据指定时间表(其中完成任务的工作)。 目标必须是以下类型之一:
- HTTP/S 端点
- Pub/Sub 主题
- App Engine HTTP/S 应用
Cloud Scheduler 旨在提供“至少一次”提交;也就是说,在每次安排的执行中,作业将至少运行一次。在极少数情况下,作业可能会与时间表的单个实例相关联地运行多次,因此您的代码必须确保重复执行不会产生任何有害的副作用。您的目标应具有幂等性。
您可以使用 Cloud 控制台或 gcloud 命令行工具创建 Cron 作业。
支持的目标区域(按目标)
如果您的目标是 HTTP/S 端点或 Pub/Sub 主题,则 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 应用。
作业重试政策
如果 Cloud Scheduler 作业未成功完成,并且 作业处理程序未收到确认,则使用 指数退避算法。
您可以配置用于确定重试行为的设置。如需了解详情,请参阅 RetryConfig
。