2015-06-01 3 views
1

Я работаю над приложением, созданным с помощью Laravel 4.2.Ограничение потока электронной почты в Laravel

Мое приложение отправит довольно много отдельных писем. Проблема в том, что мой SMTP-сервер имеет ограничение на максимальное количество 300 писем/30 минут и 5000 писем/день

Этого будет достаточно для меня. Но я бы хотел контролировать поток электронной почты sen, поставив их в очередь, чтобы их отправляли со скоростью не более 300 писем/30 минут.

Есть ли простой способ сделать это, используя библиотеки Laravels?

ответ

1

Вы находитесь на правильном пути с очередью. Скажем, у вас была таблица DB с одной строкой для каждого отправляемого сообщения и отслеживание столбцов, если это письмо было отправлено. Вы можете создать Laravel Command, который будет выполняться как cronjob каждые 30 минут, который отправит следующие 300 электронных писем, которые еще не были отправлены.

Лучшим, более чистым и универсальным вариантом будет реализация одного из многих двигателей очереди, поддерживаемых Queues Laravel. Это потребует изменения серверной среды, подобно установке mysql для поддержки базы данных.

Смежные вопросы