NetBSD-Users archive

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

Re: Postfix and local mail delivery - still relevant in 2020?



On 2020-06-07 07:32, Greg A. Woods wrote:
At Sun, 7 Jun 2020 01:53:34 +0200, Johnny Billquist <bqt%update.uu.se@localhost> wrote:
Subject: Re: Postfix and local mail delivery - still relevant in 2020?

That I disagree with. Being a person who actually runs NetBSD on some
older hardware, postfix is a real resource hog. It takes forever to
start up, while sendmail takes off in no time. I actually like
sendmail, while I find postfix to be way over complicated.
(But yes, I can understand people not liking sendmail.cf, it takes a
bit to grow on you.)

Is the slow startup you observe happening with just the default
configuration (for local delivery)?

It's happening with any kind of configuration.

Basically, anything written in C++ is almost a lost cause even before starting.

Even static-linked it's only a couple of still relatively small
processes, just over 1MB RSS each, on my machines.  Though I suppose
they do have to open and parse a few more config files, and the qmgr
process is rather bloated in total size (but it doesn't seem to have to
read in much more than 1/4 of itself to get going).

postfix alone takes close to a minute to get going at boot time on my VAXen... And that is just counting before rc continues to the next item. I haven't checked if postfix are then still being busy actually getting things sorted in the background...

As for complexity, well sendmail.cf is just the most visible surface of
the problem -- the real issue is inside the code.  Postfix does have a
somewhat more complex overall design, depending on how you look at it,
as it's not just mostly one big monolithic program that's mostly a state
machine driver.  However the Postfix code is almost trivial to read and
comprehend in comparison to Sendmail's code.  The whole package is just
over 133,000 lines (pure code, comments stripped) of extremely well
documented easy-reading code; with the actual programs that run in the
default config accounting for fewer than a total of 8000 lines total of
code together (i.e. not including the project libs they also make use of).

It's been ages since I looked in the sendmail code (as in more than 20 years). I didn't consider it to be that horrible, but I guess it might have changed, and also standards for "horrible" are rather subjective.

133,000 lines of code is, in my book, a lot. That is not a good sign.

The Research Unix (and Plan-9) UPAS mailer is possibly more elegant than
Postfix in both design and implementation, and incredibly small in
comparison (at only 9k lines of code _total_), but ultimately it is
_far_ less flexible and _far_ less featureful; and probably less
scalable.  For small machines though it would be a good basic MTA.

Never looked at it.

Anyway, I was mostly wanting to point out that I was disagreeing with the statement that postfix was better in sendmail in every aspect. There is one measurable aspect where it clearly is not. For much of other things, it's a bit subjective...

  Johnny

--
Johnny Billquist                  || "I'm on a bus
                                  ||  on a psychedelic trip
email: bqt%softjar.se@localhost             ||  Reading murder books
pdp is alive!                     ||  tryin' to stay hip" - B. Idol


Home | Main Index | Thread Index | Old Index