Исходя из того, как вы задаете вопрос, немного сложно понять, чего вы хотите.
Если вы хотите отправлять электронную почту практически в реальном времени, жизнь довольно проста. У некоторых покупателей есть потребность, и как только они публикуют ее, вы отправляете кучу уведомлений. Это будет трудно измерить, но боль придет со стороны доставки электронной почты. Простое создание списка провайдеров для информирования довольно тривиально, если предположить, что ваша база данных и инфраструктура не так уж ужасны.
Если это то, что вы делаете, вы просто хотите убедиться, что ваша платформа доставки электронной почты настроена разумно. Спроектируйте свою инфраструктуру так, чтобы ваша базовая система могла легко делегировать пакеты электронной почты на N подчиненных серверов, которые могут обрабатывать некоторые операции слияния и обеспечивать достаточную пропускную способность SMPT.
Если вы хотите периодически отправлять электронную почту, чтобы поставщики получали только одно электронное письмо с несколькими заданиями, вам следует подумать о вещах немного по-другому.
В этом случае рассмотрим архитектуру, основанную на сегментации списка поставщиков и репликации базы данных для обработки нагрузки чтения.
В этой модели покупатель публикует работу. Ваша основная база данных обновляется, и некоторое количество подчиненных получает данные посредством репликации. Каждый раб отвечает за своевременное обновление информации о поставщиках по электронной почте. Каждые N часов каждый ведомый читает из своей выделенной базы данных, доступной только для чтения, и обрабатывает свой сегмент пользователей.
Вам нужно будет уточнить детали повторного сегментирования ваших провайдеров, когда вы подключите новую систему уведомлений в Интернете. Например, когда вы добавляете третью систему уведомлений, она должна обслуживать примерно 1/3 нагрузки от каждого из двух существующих.