НОВОЕ РЕШЕНИЕ: Запланированные задания Lambda
Вернер Фогель объявил сегодня (10/08) на re: Invent, что у AWS Lambda теперь есть собственный планировщик.
С.Е. AWS Lambda релиз примечание на 2015-10-08 :
Вы также можете настроить AWS Lambda для регулярного запуска кода по расписанию с помощью консоли AWS Lambda. Вы можете указать фиксированную ставку (количество часов, дней или недель) или указать выражение cron. Для примера см. Пошаговое руководство 5: Использование лямбда-функций для обработки запланированных событий (Python) .
СТАРОЕ РЕШЕНИЕ: планирование с помощью AWS Data Pipeline
Вы можете использовать AWS Data Pipeline для планирования задачи с заданным периодом. Действие может быть любой командой при настройке конвейера с помощью ShellCommandActivity .
Например, вы можете запустить команду AWS CLI, чтобы:
- Отправьте сообщение в SQS
- или напрямую вызвать лямбда-функцию (см. invoke )
Вы можете легко создать запланированную задачу AWS Data Pipeline прямо в консоли AWS (например, с помощью команды интерфейса командной строки AWS):
Вы также можете использовать 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 доллара в месяц.