[Mailman-Developers] Serious I/O contention issue
brad.knowles at skynet.be
Tue Oct 14 18:14:53 EDT 2003
At 1:11 PM +0100 2003/10/14, Mike Bradley wrote:
> I have a rather large mailing list (35000 members) which is used for
> announcements only, but I have been experiencing terrible performance
> problems when the qrunner is active. The mail server is Postfix,
> Mailman is version 2.1.3 (previous versions showed the same problems).
Just checking, but have you seen the following FAQ entries? See:
I figure you probably have already seen them, but I wanted to be sure.
> When I send an outgoing mail, the qrunner processes take up all my CPU
> and the hard disk becomes inaccessible due to constant IO. Even when
> there is very little activity in the list and the queues are cleared,
> the server locks up for several seconds every time an operation is
What about the machine you're doing this on? The filesystem?
How is postfix configured?
If you read Nick Christenson's book _Sendmail Performance
Tuning_, please note that many of the criteria are also applicable to
other MTAs. See <http://www.jetcafe.org/~npc/book/sendmail/> for
more info. Disclaimer: Nick was my co-author for a talk I gave
previously (see <http://www.shub-internet.org/brad/papers/dihses/>),
and I was a technical reviewer of this book.
Clearly, there may well be lots of opportunity here to tune your
filesystem for maximum performance.
> I am not familiar with the exact way the application operates, but are
> the mlist arrays shared/marshalled across the qrunner processes via the
> _listcache? If so, then would it be possible to eliminate the
> mlist.Load() in the OutgoingRunner and implement delayed saving in the
> mailing list class so that Save() didn't cause a write to disk each
Depending on what your "SMTP_MAX_RCPTS" value is set to, I would
imagine that this should be loaded and saved each time a message is
passed from your mailman qrunner to postfix. The higher
SMTP_MAX_RCPTS, the less often this process should occur. Of course,
others have found that SMTP_MAX_RCPTS should typically be set
somewhere between 2 and 10 (usually ~5) for best overall performance
(see the FAQ entries above).
Brad Knowles, <brad.knowles at skynet.be>
"They that can give up essential liberty to obtain a little temporary
safety deserve neither liberty nor safety."
-Benjamin Franklin, Historical Review of Pennsylvania.
GCS/IT d+(-) s:+(++)>: a C++(+++)$ UMBSHI++++$ P+>++ L+ !E-(---) W+++(--) N+
!w--- O- M++ V PS++(+++) PE- Y+(++) PGP>+++ t+(+++) 5++(+++) X++(+++) R+(+++)
tv+(+++) b+(++++) DI+(++++) D+(++) G+(++++) e++>++++ h--- r---(+++)* z(+++)
More information about the Mailman-Developers