В приложении Rails электронная почта должна отправляться в фоновом режиме или синхронно?

StackOverflow https://stackoverflow.com/questions/2425012

Вопрос

Мы приближаемся к выпуску нашего нового приложения для рельсов, и пока интерес кажется очень сильным, и мы немного обеспокоены тем, где будут узкие места.Кажется, это системные электронные письма при регистрации и в других ситуациях.Это верно?

Следует ли отправлять отдельные электронные письма пользователям асинхронно в фоновом режиме?Если да, то какое решение будет лучшим?

Я рассмотрел несколько решений и не нашел ничего определенного.

Это было полезно?

Решение

Я бы сказал, что это зависит от ваших требований.Если вам нужно иметь возможность сообщить пользователю, что отправка почты не удалась, сделайте это в том же потоке.

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

Другие советы

На заднем плане с помощью http://github.com/tobi/delayed_job

Та же тема, если вы спросите меня....путем создания файла в папке перетаскивания, который подхватывает сервер электронной почты.Тогда не будет слишком много накладных расходов, поэтому разделение потоков не имеет особого смысла.

По крайней мере, я всегда так с этим справляюсь.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top