View a markdown version of this page

Cron 表达式引用 - AWS 上的分布式负载测试

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

Cron 表达式引用

此解决方案使用标准 5 字段 Linux cron 格式的子集来制定重复的测试计划。cron 表达式由五个以空格分隔的字段组成。

┌───────── minute (0-59) │ ┌─────── hour (0-23, *, */N, or comma list) │ │ ┌───── day of month (1-31 or *) │ │ │ ┌─── month (1-12 or *) │ │ │ │ ┌─ day of week (0-6, *, range, or list) │ │ │ │ │ 0 9 * * 1-5

接受的值

下表描述了每个字段接受的内容。

字段 接受的值 示例

分钟

从 0 到 59 之间的单个值。

0, 30, 45

小时

(每小时)、步长值、0 到 23 之间的单个值或以逗号分隔的值列表。

, , 9, 9,17

日期

*(每天)或从 1 到 31 的单个值。

*, 1, 15, 31

Month

*(每个月)或从 1 到 12 的单个值。

*, 1, 6, 12

星期几

*(每天)、0 到 6 之间的单个值、使用连字符的范围或逗号分隔的列表。

*, 0, 1-5, 0,6

星期值使用以下映射:0 = 星期日,1 = 星期一,2 = 星期二,3 = 星期三,4 = 星期四,5 = 星期五,6 = 星期六。

不支持的模式

以下模式是有效的 Linux cron 语法,但此解决方案不支持。

模式 示例 Reason

分钟步长值

*/15 * * * *

最小调度间隔为一小时。

会议纪要清单

0,30 * * * *

最小调度间隔为一小时。

月份的日期范围

0 9 1-15 * *

仅接受单日值或通配符。

月份的日期清单

0 9 1,15 * *

仅接受单日值或通配符。

月份范围

0 9 * 3-9 *

仅接受单月值或通配符。

月份清单

0 9 1 1,6,12 *

仅接受单月值或通配符。

问号

0 9 ? * ?

问号字符在标准 Linux cron 中无效。请改用 *

预设图案

Web 控制台提供以下预设模式,您可以直接选择这些模式。

模式名称 Expression 说明

每小时

0 * * * *

每小时在第 0 分钟运行。

每天上午 9:00

0 9 * * *

在所选时区每天上午 9:00 运行一次。

工作日上午 8:00

0 8 * * 1-5

周一至周五上午 8:00 运行。

每周日下午 5 点

0 17 * * 0

每周日下午 5:00 运行。

每月 1 日上午 11 点

0 11 1 * *

在每个月的第一天上午 11:00 运行。

调度限制

  • 预定测试运行之间的最小间隔为一小时。系统会验证连续运行之间的间隔是否长于估计的测试持续时间。

  • 所有定期计划都需要一个到期日。测试将在到期日期 (UTC) 结束后运行。

  • 计划时区决定了 cron 何时触发。夏令时过渡是自动处理的。如果由于夏令时向前弹跳过渡而导致不存在预定时间,则会跳过该事件。

  • 系统会在 Web 控制台和 API 上验证 cron 表达式。如果表达式与接受的格式不匹配,则无法创建测试。