[Mailman-Users] Mailman speed
Ian A B Eiloart
iane at sussex.ac.uk
Thu Jul 8 18:43:45 CEST 2004
--On Thursday, July 8, 2004 5:36 pm +0200 Brad Knowles
<brad.knowles at skynet.be> wrote:
> At 3:52 PM +0100 2004-07-08, Ian A B Eiloart wrote:
>> The MTA does need to VERP remote deliveries, and that means making
>> callouts to remote machines for each recipient. However, exim will
>> use a single connection for each remote host - rather than one per
>> recipient. So, exim has to send the data several times, but it doesn't
>> have to read the data several times.
> The real cost here is not reading the data several times, or making
> several remote connections when one would have sufficed -- proper
> connection caching and queue sorting would have solved the latter problem
> No, the real cost here is the extra queue entries that the MTA would
> have to make for each of the VERPed recipients as received by Mailman, as
> opposed to being able to make just one queue entry and allowing the MTA
> to VERP the recipients itself.
I'm not sure that I follow what you are saying here.
Anyway, exim won't be queueing mail AFTER doing the VERP. Only the
un-VERPED message gets queued. EXIM's philosophy is to avoid queueing
messages if possible, because it is usually possible to deliver a message
at the first attempt. Probably better than 99% likelihood for a typical mix
Mailman will queue one copy of the message, and exim will pick it up and
immediately attempt delivery (including VERP rewrites). If it delivers to
all recipients, it throws away the message. If it has temporary failures on
some, it will leave the single message on the queue, and write a file
recording who has received the message.
At least, I think that's the way it works. The strategy probably wouldn't
work with an MTA like qmail which queues first and thinks later.
> Synchronous meta-data updates are the single biggest performance limiter
> for MTAs, assuming you have configured the rest of the mail server
>> Yes, it will. There would not have been much point doing it otherwise.
>> The ONLY change to the Mailman configuration there is
>> VERP_DELIVERY_INTERVAL. The exim recipe does the
> Of course, this does assume that the MTA uses the same VERP format that
> Mailman would have used, otherwise Mailman is likely to get very
> confused. This may or may not pose a problem for you, but you should at
> least check to make sure that they both use the same formats.
Of course it does! The whole point of the recipe is to deliver Mailman like
VERP without the overhead in handoff of messages from Mailman to the MTA.
Sussex University ITS
More information about the Mailman-Users