plusplus
Июнь 18, 2013 12:20:04
В общем использую Flask, нужно написать инструмент рассылки письма своим пользователям. Вижу это так: через веб-интерфейс создается шаблон сообщения и помещается в задания, затем скрипт-шедуллер эти задания выполняет. Есть уже может быть какие-то готовые, может быть вспомогательные, инструменты для этого, в частности для Flask? Есть смысл заморачиваться с Celery, какие у него преимущества?
Lexander
Июнь 18, 2013 12:44:36
Разных flask-mailer, flask-mail хватает.
Как на гитхабе, так и в PyPy.
Отправка писем - вещь, как ни крути, асинхронная.
Поэтому мысль в сторону Celery верная, но…
Не нужно забывать о банальном кроне (запланированная отправка) и уже используемой БД для хранения очереди (через ту же SQLAlchemy).
В качестве бэкенда можно использовать Celery, если нужны возможности за пределами функционала крона и не хотите смешивать обычные задания крона со специальными (типа рассылки, пересчета отчетов, прайсов и пр.), плюс нужно гарантированно отправить письмо, т.е. нужно хранилище очереди на диске.
Дополнительно Celery даст возможность мониторинга, что тоже бывает полезно.
Специализированные хранилища типа ZeroMQ+Redis выбирайте, если писем много, ваша основная БД загружена или планируете резко масштабироваться.
lorien
Июнь 18, 2013 19:50:17
Как вариант, использовать сервис типа critsend