AWS Lambda запланирует отложенное выполнение для однократного запуска - PullRequest
0 голосов
/ 08 июля 2019

У меня есть API-шлюз с лямбдами, для некоторых из конечных точек, которые я хочу запланировать выполнение в будущем, для запуска один раз, например, вызов REST был сделан в момент времени T, я хочу, чтобы эта лямбда планировала выполнение ОДИН РАЗ в Т + 20мин.

Единственное решение, которое я нашел для достижения этой цели, - это использовать boto3 и Cloudwatch для настройки cron в момент вызова REST, отправки события с полезной нагрузкой, затем, когда запускается отложенная лямбда, удаляет правило.

Я нашел это очень тяжелым, есть ли другой способ добиться такой картины?

Редактировать: Это не повторяющаяся лямбда, просто чтобы запустить раз.

1 Ответ

0 голосов
/ 08 июля 2019

Один из вариантов - использовать Шаговые функции AWS для запуска лямбда-функции AWS после заданной задержки.

Шаговые функции имеют состояние ожидания, которое может планировать или задерживать выполнение, поэтому вы можетеможет реализовать довольно простой конечный автомат Step Functions, который ставит задержку перед вызовом лямбда-функции.База данных не требуется!

Пример концепции (немного другой, но достаточно близкий) см .:

...