Я придумал схему для простого пакетного электронного письма, которое я делаю. Электронная почта будет отправлять X сообщений по электронной почте каждые 5 минут, запустив php-скрипт cron job'd. Проблема в том, что я не думаю, что это лучший способ сделать это, и искал альтернативный, лучший способ; или валидация;).
(упрощенная) схема будет выглядеть так:
EmailList | JobQue | Jobs
------------|----------|----------
email | jobid | id
| email | esubject
| ebody
Идея состоит в том, что при создании нового задания оно добавляется в таблицу Jobs
, и каждое электронное письмо, которое необходимо отправить, будет добавляться в таблицу JobQue
.
Затем php-скрипт cron'd, фактически отправляющий электронные письма, просто перебирает следующее число элементов в таблице JobQue
, отправляет и удаляет их.
Это хороший способ сделать это? Он прогнется при умеренной нагрузке? (1000-5000 писем, 1-5 заданий в день)? Конечно, будет, если будет добавлено больше писем, чем отправлено, но будут ли другие проблемы (например, попытка добавить 1000 записей в таблицу за один раз, даже если я вставляю их все одним запросом mysql)?
Спасибо
Max