[Exim] Handling high volume, low availability domains

Top Page
Delete this message
Reply to this message
Author: Sheldon Hearn
Date:  
To: exim-users
Subject: [Exim] Handling high volume, low availability domains
Hi folks,

As posted before, I'm pregenerating my mailshots before delivery. I end
up with hundreds of thousands of messages in the queue, and then fire
off a couple of hundred queue runners.

At least one domain for these mailshots qualifies as high volume, low
availability. By this I mean that a large number of the messages are
destined for the domain, and that the domain is hard to reach. My big
bugbear is Hotmail, where sometimes 9 to 14 of their 14 MX servers
refuse SMTP connections.

I've taken some good advice I got on the list: the generator for the
mailshot pipes into an Exim process configured with

    queue_remote_domains = !hotmail.com


and then a special router that arranges delivery of hotmail.com messages
to a specialized listener on 127.0.0.1:2525, which queues the
hotmail.com messages in a separate queue.

This works nicely, with one drawback: my generation time has slowed
down by at least 3 times. I don't believe that this is a function of
the network connection time to the specialized listener.

I believe that it's because the exim -bS process that I push all the
generated messages into is now creating msglog files for all non-hotmail
messages, with contents like this:

2002-05-29 09:54:30 xxx@??? routing defer (-45): domain is in queue_remote_domains

I think this extra IO is dragging me down, and I don't believe it's
necessary.

Any suggestions on how to avoid this additional IO, either by hacking
the source or using a clever option I'm not aware of? I'm using
exim-3.36.

Ciao,
Sheldon.