[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Postfix. List relayhost-s



On Fri, Oct 28, 2005 at 05:03:08PM +0400, Artem Chuprina wrote:
> Pavel Ammosov -> debian-russian@lists.debian.org  @ Fri, 28 Oct 2005 16:47:20 +0400:
> 
>  >> 	И еще вопрос. Вообще этот Postfix используется где-нибудь или
>  >> это что-то очень редкое/экзотическое. И "все нормальные люди" используют
>  >> (sendmail,exim,...)? 
> 
>  PA> postfix годится когда у тебя два с половиной юзера, домен при этом один
>  PA> и почта доставляется в локальные мейлбоксы.  Всё остальное на нём сильно
>  PA> тормозит (кучка процессов перекладывает письма между кучей очередей) и
>  PA> не управляемо ( -bt нету и проверить куда пойдёт письмо после всех
>  PA> map'ов невозможно).  
> 
>  PA> Я, понятно, слегка преувеличил, но общая картина примерно такая.
> 
> Насчет -bt ты, безусловно, прав, а вот про тормоза - примерно так же
> гонишь.
:)

В postfix есть две (а если посмотреть детально, то и три очереди) - 
maildrop и incoming. Каждое письмо проходит через них, операции с
очередью всегда требуют синхронного I/O с диском. В exim очередь одна,
ничего никуда не перекладывается.

Далее, очередь в postfix не учитывает предыдущих доставок. Если у тебя
2000 писем в очереди, 1987 из которых предназначены для одного 
временно-мёртвого сервера, queue runner при каждом запуске будет
пытаться доставить эти 1987 писем, в пустую бесполезно тратя диск. exim
посмотрит в свои хинты что время повтора не пришло и быстренько
раскидает 13 писем по работающим серверам. Понятно, что можно вспомнить
книжку Крестенсона, завести несколько очередей, устроить их ротацию,
Затем добавить серверов для отправки на такие сайты, но зачем возится?

Затем, письмо пока пролезет через postfix будет пропущено через кучку
процессов со всякими map'ами и др, это уже не нагрузка на диск, но
всякие переключения контекстов, тож тормоз. В exim процесс один, оно там
внутри себя сносно всё перепихивает.

Всё это приводит к тому что exim в реальной жизни гораздо быстрее
postfix.

Добавим сюда милую ситуацию, которую я наблюдал однажды: был postfix,
почту наружу он посылал через релей, однажды релей переконфигруировали
неудачно и он перестал релеить почту, 550 relay not permitted и всё
такое. postfix (1.x, который в woody) отправил письмо, его не приняли,
он тогда захотел послать bounce, его тоже не приняли. Тогда он просто
взял и стёр этот bounce. Потерянное письмо, без всякого UUCP, без
nondsn-aware member'ов и прочего ужыса. Миленькая надёжненькая система.
exim в подобной ситуации заморозил bounce в очереди, sendmail засунул
его в /var/mail/:saved.

Вспомним настройку SASL, разборки где chroot, а где нет и мне
становится совершенно непонятен разделяемый многими администраторами
восторг вокруг postfix. 



Reply to: