Провайдер разрешает отправку только 100 SMS в секунду, а у клиента загружено 2 миллиона номеров — как это учитывать, чтобы не допустить падения системы?

Сохраняйте получателей в долговечной очереди и ограничивайте общий темп до 100 SMS/с по правилам провайдера. Минимальное время для 2 миллионов отдельных SMS — 5 часов 33 минуты 20 секунд.

Короткий ответ

Что ответить на собеседовании

Сохраняйте получателей в долговечной очереди и ограничивайте общий темп до 100 SMS/с по правилам провайдера. Минимальное время для 2 миллионов отдельных SMS — 5 часов 33 минуты 20 секунд.

Подробный разбор

Ответ с пояснениями

Сохраняйте получателей в долговечной очереди и ограничивайте общий темп до 100 SMS/с по правилам провайдера. Минимальное время для 2 миллионов отдельных SMS — 5 часов 33 минуты 20 секунд.

Это 2 000 000 / 100 = 20 000 секунд без учёта повторов и пауз. Лимит должен координироваться между workers, а не применяться независимо каждым. Нужны backpressure, ограниченные повторы с задержкой, статус каждой отправки и возможность отмены. Уточните, считаются ли сегменты длинного SMS отдельно и разрешены ли bursts. Импорт обрабатывается потоково или порциями, чтобы не держать весь объём в памяти.

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее