Hello Vasily,

Вообще, 72Гб для 2-3 млн писем в день это очень много. Мне удавалось достичь 
такого объема и на 8Гб.

Вот мой рецепт

Главное  - помещаем спул и логи на ramdisk! 

~~~~~~~~~~~~~~~~~~~~~~~BEGIN exim.conf 

# уменьшаем кол-во логов
no_message_logs
write_rejectlog=false

# разбиваем письма в спуле по подпапкам
split_spool_directory = true

# не делать немедленной доставки. это обязательно для такого большого объема 
писем
queue_only
queue_run_max = 200

# exim делает ident запрос на локально сгенеренные письма. выключаем.
rfc1413_hosts =

...

remote_smtp:
...
# plain text smtp быстрее чем tls
  hosts_avoid_tls=*
# меньше таймаут - быстрее обрабатается очередь
  connect_timeout = 10s

...

begin retry
# макс. время жизни письма в очереди 24h

*                      *           F,2h,15m; G,24h,1h,1.5;


~~~~~~~~~~~~~~~~~~~~~~~END exim.conf 

И вот такой скрипт в cron, ежеминутно.
Используя встроенный в Exim queue runner я не смог достичь достаточное кол-во 
его экземпляров, равное queue_run_max, а нам надо _очень_ много экземпляров. 
Переменную LIMIT делаем соразмерно имеющейся памяти, одна копия exim жрет около 
30Mb.

~~~~~~~~~~~~~~~~~~~~~~~ BEGIN script 
#!/bin/bash

PATH=/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin

LIMIT=100
COUNT=`pgrep exim | wc -l`
echo $COUNT exims are running

if [ "$COUNT" -lt "$LIMIT" ]
then 
        echo starting new 10
        for i in `seq 10`; do exim -q & done
else    
        echo doing nothing
fi

~~~~~~~~~~~~~~~~~~~~~~~ END script 



On Fri, 26 Jul 2013 12:59:56 +0400 "Vasily S. Kostroma" <[email protected]> wrote:

> Моё почтение, коллеги.
> Вот уж давно бьюсь, никак не получается найти консенсуса..
> 
> Суть. Имеется выделенный сервантик, xeon с 72-мя ГБ на борту. 
> Используется для отправки регулярных рассылок и уведомлений различного 
> типа. Ежедневно через него проходит порядка двух-трёх миллионов писем 
> общим объёмом в 30-40Гб. Около половины писем генерируются скриптами на 
> самом сервере, остальная половина приходит с других локальных серверов 
> по SMTP. Спул находится в рамдиске (не зря же столько памяти).
> 
> Задача - сделать так, что бы сервер был настроен на максимальную 
> отправку писем. Актуальность - сутки (если письмо в течении суток не 
> ушло, то можно удалять). Был бы премного благодарен за помощь.
> 
> И ещё одно. exim -bpc показывает около пяти тысяч писем в очереди, но в 
> папке спула около трёхсот тысяч файлов. Откуда, куда, как? Спул забивается..
> 
> Спасибо заранее.


_______________________________________________
Exim-users mailing list
[email protected]
http://mailground.net/mailman/listinfo/exim-users

Ответить