新解决方案:Lambda 计划作业
Werner Vogel 今晚 (10/08) 在 re:Invent 上宣布 AWS Lambda 现在拥有自己的调度程序。
请参阅 2015-10-08 上的AWS Lambda 发行说明:
您还可以设置 AWS Lambda 以使用 AWS Lambda 控制台定期调用您的代码。您可以指定固定速率(小时数、天数或周数),也可以指定 cron 表达式。有关示例,请参阅演练 5:使用 Lambda 函数处理计划事件 (Python)。
旧解决方案:使用 AWS Data Pipeline 进行调度
您可以使用 AWS Data Pipeline 来安排具有给定时间段的任务。当您使用ShellCommandActivity配置管道时,该操作可以是任何命令。
例如,您可以运行 AWS CLI 命令来:
- 向 SQS 发送消息
- 或直接调用 Lambda 函数(请参阅调用)
您可以直接在 AWS 控制台中轻松创建 AWS Data Pipeline 计划任务(例如,使用 AWS CLI 命令):
您还可以使用 API 来定义您的日程安排:
{
"pipelineId": "df-0937003356ZJEXAMPLE",
"pipelineObjects": [
{
"id": "Schedule",
"name": "Schedule",
"fields": [
{ "key": "startDateTime", "stringValue": "2012-12-12T00:00:00" },
{ "key": "type", "stringValue": "Schedule" },
{ "key": "period", "stringValue": "1 hour" },
{ "key": "endDateTime", "stringValue": "2012-12-21T18:00:00" }
]
}, {
"id": "DoSomething",
"name": "DoSomething",
"fields": [
{ "key": "type", "stringValue": "ShellCommandActivity" },
{ "key": "command", "stringValue": "echo hello" },
{ "key": "schedule", "refValue": "Schedule" }
]
}
]
}
限制:最小调度间隔为 15 分钟。
定价:每月约 1.00 美元。