Не думайте об этом, отправляя 1000 писем одним нажатием кнопки, думая о том, как планировать работу по электронной почте.
Не знаю, что вы пытаетесь сделать, но вы, вероятно, также не хотите загружать 1000 сообщений, пока пользователь ждет ответа после нажатия кнопки.
Я бы подумал, что есть две очереди SQS (по крайней мере), первая очередь используется для планирования пакетного задания, при щелчке мыши вы вставляете одно задание, то есть «отправляете это письмо 1000 людям», как Travis R предложил.
Другое задание могло опросить Q1, см. «Отправить этим 1000 людям это электронное письмо, и оно может затем создать 1000 сообщений SQS в Q2, по одному на адрес электронной почты.
Третий процесс (возможно, несколько из них), будет смотреть Q2 и отправлять единственное письмо из списка и удалять сообщение. Используя этот метод, вы можете резко снизить скорость отправки, чтобы адаптироваться к ограничениям вашего интернет-провайдера, либо с настройками SQS, либо путем ограничения того, как часто вы отправляете по электронной почте одно задание электронной почты - это график выполнения.
Также рассмотрите использование SES амазонок и настройку другого процесса для отслеживания отскоков и жалоб - которые вы обязательно должны иметь, если вы начинаете 1000+ писем за раз.
Я уверен, что большинство мест ограничивает количество исходящих сообщений электронной почты. –
Я не уверен в SNS, но SES ограничена скоростью по 5 сообщений в секунду по умолчанию. –