Альтернатива Cronjob с использованием AWS Lambda + Cloudwatch () - PullRequest
0 голосов
/ 12 сентября 2018

Я разработчик стартапа, и сейчас мы используем около 30 cronjobs, некоторые из них запускаются каждую минуту, другие запускаются один раз в день, другие запускаются в определенные дни.Проблема в том, что они запускаются каждую минуту, когда большую часть времени не требуется.

Это несколько увеличивает наши расходы, потому что ночью они все еще работают, когда в большинстве случаев наши сервисы никого не подключают к сети (ине требуется запуск).

Мы говорили об использовании AWS для замены этих cronjobs на нечто вроде событий.Тем не менее, я не могу найти решение.Вот пример одного из наших cronjobs:

  • Один клиент начинает делать регистрацию и имеет 8 минут, чтобы завершить ее.Прямо сейчас у нас есть cronjob, который запускается каждую минуту, чтобы проверить, завершил ли он, а если нет, «удалить» его.

Хотя я мог бы заменить это на событие SNS + Lambda.По сути, когда пользователь начинает регистрацию, отправьте сообщение SNS, которое вызовет лямбда-функцию.Тем не менее, он может запускаться только через 8 минут, а не мгновенно.

Я видел в SNS, что мы можем отложить до 15 минут, но у нас есть другая служба, которая отправляет электронную почту через несколько часов, чтоне будет работать

У кого-нибудь есть подсказка, как мне это сделать?

Спасибо

1 Ответ

0 голосов
/ 12 сентября 2018

Вы можете использовать шаговые функции AWS для реализации рабочего процесса и добавить задержку для ожидания перед вызовом функции Lambda.

...