定时任务计划表达式
更新时间:2024-07-05
计划表达式
用户可以使用 cron 或 rate 表达式在函数计算中创建按计划自行触发的规则。所有表达式都使用 UTC 时区
,计划的最小精度为 1 分钟
。
CFC提供支持 cron 表达式和 rate 表达式。cron 表达式支持的具体的执行您可以定义具体的那一天的那一分钟。 而Rate 表达式更容易定义,它以一定的间隔触发规则,例如每小时一次或每天一次。
rate表达式
Rate 表达式有两个必需字段。这些字段用空格分隔。
rate(1 minute)
rate(value unit)
字段 | 说明 | 取值 |
---|---|---|
value | 值 | 正数 |
unit | 时间单位。如果是1 单位必须是单数 (例如,rate(1 day)),而不是复数(例如,rate(5 days)) | 有效值:minute minutes hour hours day days |
举个例子:
rate表达式 | 说明 |
---|---|
rate(1 minute) | 每隔1分钟 |
rate(5 minutes) | 每隔5分钟 |
rate(1 hour) | 每隔1小时 |
rate(1 day) | 每隔1天 |
rate(10 hours) | 每隔10小时 |
cron表达式
cron表达式有5个必填字段
字段 | 值 | 特殊字符 |
---|---|---|
分钟 | 0-59 | , - * / |
小时 | 0-23 | , - * / |
日期 | 1-31 | , - * ? / |
月 | 1-12 或 JAN-DEC | , - * / |
星期几 | 0-6 or SUN-SAT | , - * ? / |
特殊字符的描述
特殊字符 | 描述 | 样例 |
---|---|---|
, | 逗号 表示列表 | 在月份中JAN、FEB 和 MAR 将包含 January、February 和 March |
- | 破折号 表示范围 | 在小时字段中使用5-10,表示UTC时间从5到10点 |
* | 星号 包含该字段中的所有值 | 在分钟字段中, 将包含每分钟,您不能在"日期"和"星期几"字段中同时使用。如果您在一个中使用它,则必须在另一个中使用 ? |
? | 问号 表示不确定的值 与其他指定值一起使用 | 在"日期"字段中,您可以输入7,如果您不介意7日是星期几,则可以在"星期几"字段中输入 ? |
/ | 斜杠 表示一个值的增量 | 在"分钟"字段中,您可以输入 1/10 ,它表示从1分开始,每隔10分钟执行 |
样例(注意:以下样例均使用UTC时区,Asia/Shangha时区比UTC时区多八个小时)
cron表达式(UTC时间) | 解释 |
---|---|
cron(0 10 * * ?) | 每天上午的 10:00 (UTC) 触发;对应Asia/Shanghai为每天下午18:00执行 |
cron(30 10 * * ?) | 每天上午的 10:30 (UTC) 触发 ;对应Asia/Shanghai为每天下午18:30执行 |
cron(10,11,12 * * * ?) | 每小时的10分,11分,12分(UTC) 触发 |
cron(0 8 1 * ?) | 每月第 1 天的上午 8:00 (UTC) 触发;对应Asia/Shanghai为每月第 1 天的下午16:00执行 |
cron(0/10 * * * ?) | 每10分钟 (UTC) 触发 |
cron(0/10 8-10 ? * MON-FRI) | 每星期一到星期五的上午 8:00 和 10:00 (UTC) 之间,每10分钟触发一次;对应Asia/Shanghai为每星期一到星期五的下午16:00和18:00之间执行,每10分钟触发一次 |