Задача, отправлять письма максимально быстро.
У нас есть база в 400к легально собранных адресов, людей, которые сами подписались, так что это не спам.
Хочется 400к писем отправиться за 1-2 часа.
Есть ли у кого рецепты, как с 1 сервера отправить быстро через exim4 столько писем ?
1. spool в память запихнули
2. паралельную отправку включили
в целом, все рецепты из интернетов попробовали, но имеет около 15-20 писем в секунду, надо больше.
По ресурсам не упираемся ни в сеть ни в диски ни в процессор.
IP есть один, но думаю, что это решаемый вопрос.
Тут дело не в том, есть ли возможность купить или нет, а в том, что бы сначла настроить exim4 на максимальную производительность, а от этого уже отталкиваться.
И еще интересный момент.
Мы пробовали запустить на тачке 4 докера с exim и по ним раскидывать эти письма, но они дали производительность хуже, чем просто с тачки отправлять и в ресурсы не упирались.
Это увеличивали
ставидли 1000 и 20000
Но тут дело в том, что тут для каждого клиента, свое письмо, там же свои ссылки для отписки, ссылки на профиль т.д.
Coffin, тогда именно queue_run_max и смотрите почему не получается запустить большое количество обработчиков очередей, это может быть из-за ulimit'ов на файлы или процессы. ulimit на файлы должен быть как минимум вдвое больше queue_run_max, ulimit на процессы - больше queue_run_max.
И смотрите в чем именно у вас затык - письма медленно спулятся из вашего приложения или медленно отправляются из очереди? Если медленно спулятся - так наверное вы их спулите в один поток, распараллеливайте именно постановку писем в очередь.