Планирование автоматических писем в AWS - PullRequest
0 голосов
/ 26 октября 2018

Я недавно создал свое первое веб-приложение AWS с использованием эластичного beanstalk и стека MERN (MongoDB, Express, React, NodeJS), и теперь мне нужно ежедневно запрашивать базу данных, чтобы инициировать электронную почту.

Изначально я думал о создании ловушки в моем веб-сервисе, которая обрабатывает логику запроса + электронной почты, поскольку у меня уже есть все необходимые модели / соединения в моем веб-сервисе, и мне просто нужно было бы выполнять пакетное задание один раз в день, чтобы вызвать его. перехват веб-службы, но для этого потребуется отправить учетные данные и вызвать их через https.

В качестве альтернативы, я мог бы просто перекодировать все мои модели smtp / базы данных и соединения в отдельной пакетной программе, чтобы выполнить запрос и отправить электронные письма.

Какой вариант, по вашему мнению, лучше / возможнее с AWS без использования нового автономного экземпляра EC2? Будет ли AWS Batch или Lambda лучше? Мне нужно что-то, что планирует эти запросы БД + электронные письма в одно и то же время ежедневно.

Ответы [ 2 ]

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

AWS имеет богатый набор инструментов для решения таких требований.

  1. AWS Lambda может быть запланирован для запуска через определенные промежутки времени.
  2. Создание данных (подробности для электронной почты) для отправки в формате JSON
  3. Вставьте JSON в SQS
  4. Используйте другую лямбду AWS для чтения SQS для отправки электронных писем партиями

Это решение является масштабируемым, обслуживаемым, и его стоимость также будет намного меньше по сравнению с экземплярами EC2.

0 голосов
/ 05 ноября 2018

Как вам нужно планировать задачи на одно и то же время ежедневно; Другой вариант, который вы можете рассмотреть, - это установить рабочую среду , в которой вы можете развернуть свое приложение с файлом cron.yaml . Все, что вам нужно сделать, это обновить группу безопасности, предоставив работнику доступ к вашей базе данных.

https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/using-features-managing-env-tiers.html#worker-periodictasks

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...