Почта долго добавляется в очередь

EXIM, sendmail, postfix, Dovecot и прочие. Решение проблем связанных с работой электронной почты

Модератор: xM

Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
medar
проходил мимо
Сообщения: 3
Зарегистрирован: 2010-10-15 10:18:59

Почта долго добавляется в очередь

Непрочитанное сообщение medar » 2010-10-15 14:58:57

Приветствую вас, уважаемые.
Помогите пожалуйста разобраться в проблеме.

Cервер на Debian 5 , на него поставлен exim4 (apt-get install , в конфиге добавлен только smtp_acсept_max=5, и сделан dpkg-reconfigure exim4-config ).
Весь сервер отдан под один сайт + форум ipb. Все на php. Стоит задача только отправлять почту, принимать не нужно. Почты отправлять приходится относительно много - 10к пользователей, у многих есть подписки на темы форума, активно идет переписка в привате с отсылкой мейлов и сам сайт тоже рассылает уведомления, по одному-двум писем за день каждому.

Почта отправляется при помощи функции mail() , в php.ini поставлено

Код: Выделить всё

sendmail_path = /usr/sbin/exim4 -t
Проблема: днем часто появляются необъяснимые тормоза при отправке почты. Точнее, не отправки, а добавления почты в очередь exim. Я окружил профайлером функцию mail() - он показал, что функция в эти моменты может выполняться до 90 секунд. Очередь сообщений в этот момент - стандартные 10-20-30 писем, резко не растет. Вообще резких отправок почты у меня нет - письма с сайта отправляются кроном, форум отправляет преимущественно уведомлялки о PM.

LA в этот момент - средний рабочий, от 3 до 7 - и тут же начинает расти до 15-20. htop показывает, что появляется несколько процессов /usr/sbin/exim4 -bd -q30m (см аттач htop) со статусом D
exiwhat в это время говорит, что:

Код: Выделить всё

3431 running queue: waiting for 1P6fIf-0000rM-Hd (3859)
3745 daemon: -q30m, listening for SMTP on port 25 (IPv6 and IPv4)
т.е. отправляется только одно письмо.
Munin показывает, что в данный момент отправки писем не происходит вообще, или происходит очень мало (см. аттач exim4)
Кэширование у сайта сделано на файлах, активно юзается mysql и диск согласно atop работает на 80-100% . Но это, имхо, не повод НАСТОЛЬКО сильно тормозить при отправке почты.

LA, кстати, растет тем сильнее, чем больше стоит smtp_accept_max в конфиге exim4 . При дефолтных значениях он подскакивал до 100 (соответственно, /usr/sbin/exim4 -bd -q30m в процессах появлялось больше), при том, что можно было вполне комфортно работать на сайте - процессор или диск не нагружались этим LA.

Лекарство -

Код: Выделить всё

kill -9 `ps -A|awk '/exim4/{print $1}'`
/etc/init.d/exim4 start
Помогает хорошо - почта начинает отправляться и LA падает, но нельзя же постоянно следить за сервером глазами.

Вопросы.
Я совершенно не специалист по exim. Какие мысли, почему такое может происходить ? Как решить, или хотя бы локализовать проблему, что крутить ?
smtp_accept_max - это максимальное количество входящих коннектов или исходящих ? Если входящих, то почему они возникают при отправки почты и капитально вешают сервер ? Я посмотрел ошибки, отлупов приходит сравнительно мало, почти вся почта доставляется нормально.
Как заставить exim все письма сначала всасывать в очередь, а потом уже из неё раздавать ? Иначе в такие тормозные моменты при отправке PM на форуме nginx не дожидается ответа от php и показывает страницу с ошибкой.
Вложения
exim4.png
htop.png
htop.png (4 КБ) 1277 просмотров

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.ru

Хостинг HostFood.ru

Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/

Аватара пользователя
serge
майор
Сообщения: 2133
Зарегистрирован: 2006-07-30 15:34:14
Откуда: Саратов
Контактная информация:

Re: Почта долго добавляется в очередь

Непрочитанное сообщение serge » 2010-10-19 7:15:38

Укажите exim принимать почту только в очередь. Это существенно ускорит ее получение от скрипта, но доставка будет только после того как запустится обработчик очереди.
Немного телепатирую в сторону медленной отправки. Если это так, то нужно по логам разбираться из-за чего это.

medar
проходил мимо
Сообщения: 3
Зарегистрирован: 2010-10-15 10:18:59

Re: Почта долго добавляется в очередь

Непрочитанное сообщение medar » 2010-10-19 7:24:39

Укажите exim принимать почту только в очередь
А подскажите пожалуйста, какая именно настройка в конфиге за это отвечает ?

Аватара пользователя
serge
майор
Сообщения: 2133
Зарегистрирован: 2006-07-30 15:34:14
Откуда: Саратов
Контактная информация:

Re: Почта долго добавляется в очередь

Непрочитанное сообщение serge » 2010-10-19 7:44:39

Поиск отменили ?

http://www.lissyara.su/doc/exim/4.70/ma ... ion/#14.21
“queue_only” - нет немедленной доставки для всех

medar
проходил мимо
Сообщения: 3
Зарегистрирован: 2010-10-15 10:18:59

Re: Почта долго добавляется в очередь

Непрочитанное сообщение medar » 2010-10-19 8:17:03

Спасибо, что уделили время!