Мар 19 2009

Ускоряем почту. Следующий шаг.

После внедрения fallback relay, я писал об его внедрении в статье Fallback relay. Ускоряем работу почты., некоторый довольно длительный промежуток времени отдача почты за пределы сети нареканий не вызывала, но по мере роста количества пользователей, был обнаружен рост очередей и замедление отправки почты. Анализ показал, что очередь тормозится отдачей через медленные «зарубежные» каналы, что вызывает замедление отдачи и в пределах точки «обмена украинского трафика», за счет того что все активные сессии исчерпаны на отдаче на медленные «зарубежные» сервера.

Попытка увеличить количество параллельных отправок привела к забиванию зарубежных каналов и ухудшению общей ситуации с каналами.
Ну а дальше немного пораскинув мозгами родилась такая схема:
mail_sxema1

То есть клиенты отправляют на SMTP сервер, который проверяет почту на спам, делает всю нужную работу по фильтрации, затем отправляет почту на смартрелай, количество паралельных доставок у которого не ограниченно и ip адрес которого закрыт на маршрутизаторе который отвечает за зарубежный канал, соответственно, попытавшись отправить письмо на «зарубежный» сервер, этот сервер сразу получит отказ в соединении и перекинет его на fallback relay — которым на схеме является SmartRelay World и у которого ограничено число параллельных отправок. И соответственно, если уж и он не смог отправить почту — она уходит на Fallback relay и там уже будет пытаться отправится.

Как настраивается fallback relay я уже описывал в статье, о которой упоминал в начале этой статьи. Как настроить Smart Relay для exim описано в статье Exim и smarthost.
В Sendmail настроить смартхост можно двумя способами. Первый в /etc/mail/mailertable прописать такую запись:

.       esmtp:[xxx.xxx.xxx.xxx]

или если smartrelay задается именем то:

.        esmtp:name.your.smarthost

После этого в /etc/mail/ выполнить:

make

Или второй способ это в /etc/mail/»host.name.your.server».mc вписать такую строку:

define(`SMART_HOST', `name.your.smarthost')

После чего выполнить в /etc/mail:

make
make install
make restart

В постфикс SmartRelay определяется установкой в /usr/local/etc/postfix/main.cf:

relayhost = name.your.smarthost

после чего надо выполнить команду:

postfix reload

Добавить в закладки:

google.com bobrdobr.ru del.icio.us technorati.com linkstore.ru news2.ru rumarkz.ru memori.ru moemesto.ru

Украинская Баннерная Сеть