全部产品
阿里云办公

创建定时任务

更新时间:2018-09-04 09:32:12

如果您可以准确预料业务量的变化时间,就可以提前添加定时任务,在业务高峰到达前准备好足量的计算资源,或者在业务高峰后释放空闲的计算资源。

什么是定时任务

定时任务是在指定时间执行指定伸缩规则的一种预设任务,从而自动扩张或者收缩计算资源,满足业务需求的同时又能控制成本。您还可以为定时任务指定重复周期,通过灵活的规则应对业务量的变化。

说明:一个账号下可以创建的定时任务数量有限,请参阅 使用限制

由于在同一时刻一个伸缩组中只能存在一个伸缩活动,定时任务还提供了自动重试时间设置功能,避免因为单次执行伸缩规则失败影响定时任务的结果。如果同一分钟内存在多个待执行的定时任务,弹性伸缩会执行最新创建的定时任务。

操作步骤

请参照以下步骤创建一个定时任务:

  1. 登录 弹性伸缩控制台

  2. 前往 自动触发任务管理 下的 定时任务 页面,单击 创建定时任务

    create-scheduled-task-button

  3. 创建定时任务 对话框中,依次指定任务名称、执行时间、伸缩规则、重试过期时间(可选)和重复周期(可选),您还可以添加描述以便日后查看,然后单击 提交

    create-scheduled-task-dialog

    说明:有关定时任务的属性,请参阅 定时任务属性

定时任务属性

名称 说明 示例
任务名称 名称为2-40个字符,以大小写字母、数字或中文开头,可包含英文句号(.)、下划线(_)或短横线(-)。 st-yk201808301442
描述 描述定时任务的目的、作用等信息,便于日后查看。 月初访问量大,增加 3 台实例。
执行时间 定时任务的触发时间。 2018年9月2日 00:00
伸缩规则 伸缩规则的名称,指定任务触发时执行的伸缩动作。 add3
重试过期时间 时间范围是 0 秒 ~ 21600 秒(6 小时)。如果未能在执行时间触发伸缩动作,弹性伸缩将在重试过期时间内继续执行定时任务。 600
重复周期 重复执行定时任务的周期,您可以选择按日、周、月的方式重复。如果要求多样,也可以使用 Cron 表达式 按月
每月第 2 天 - 第 3 天执行
重复结束时间 停止重复执行定时任务的时间。 2018年9月30日 00:00

Cron 表达式

Cron 表达式采用 UTC+0 时区,在中国换算成系统本地时间时需要加 8 小时。另外,第一次执行 Cron 表达式的时间必须小于重复结束时间,否则会导致定时任务创建失败。

Cron 表达式是一个字符串,字符串以若干个空格隔开,分为 5 到 7 个域。目前,弹性伸缩定时任务支持 5 域的 Cron 表达式,分别是分钟、小时、日、月和星期,取值范围如下:

是否必需 取值范围
分钟 [0, 59]
小时 [0, 23]
[1, 31]
[1, 12]
星期 [0, 7],星期日 = 0 或 7

在同一个域内可以填写多个数值,方法如下:

  • 利用逗号(,)指定多个值,例如:“1,3,4,7,8”。
  • 利用短横线(-)指定值的范围,例如:“1-6”,结果等同于“1,2,3,4,5,6”。
  • 利用星号(*)指定任何可能的值,例如:小时域中填写星号代表每个整点,结果等同于“0-23”。
  • 利用正斜线(/)指定间隔频率,例如:小时域中填写“0-23/2”表示每 2 小时执行一次。同时正斜线可以和星号一起使用,例如:小时域中填写“*/3”表示每 3 小时执行一次。