Мне нужно написать свой собственный диспетчер электронной почты в php/mysql. Я использую Amazon SES для отправки электронных писем. У меня есть записи о том, кому и что нужно отправить по электронной почте в таблице MySQL «Очередь». Каждая запись удаляется после успешной отправки электронной почты. Я хотел бы отправить эти электронные письма как можно быстрее, но мне нужно помнить о квоте Amazon. Они ограничивают ваши разрешенные электронные письма, отправленные в секунду.
Как я могу организовать это, чтобы не превышать лимит? Я знаю, что могу написать php-скрипт cron, который будет извлекать только X записей из очереди и отправлять их, но если мой cron запускается только один раз в минуту, много времени уходит впустую. (X — лимит квоты в секунду)
С другой стороны, если моя квота электронной почты будет увеличена, и я смогу отправлять 1000 писем в секунду (или что-то смешное), у меня, вероятно, возникнут проблемы, если мой скрипт будет выполняться долго. Потенциально cron может запуститься снова и извлечь те же записи из таблицы Queue.