Multiple mqueue.in directories with priority
Logan Shaw
lshaw at emitinc.com
Thu Aug 10 00:17:46 IST 2006
On Thu, 10 Aug 2006, Roman wrote:
> The problem is when the newsletter being send out it fills mqueue.in
> and mail can not be delivered before MailScanner scans all 20-40k emails.
> Any ideas ?
Can you somehow whitelist the newsletter? It sounds like
it's being sent from your site out to the rest of the world,
so you should be able to trust that it isn't spam, at least.
It wouldn't achieve the aim of truly making it lower priority,
but it should pass through MailScanner quite quickly if it's
whitelisted so that it doesn't have to be scanned at all.
Just an idea, though. It might or might not be appropriate
depending on whether you want need to scan the outgoing
newsletter for viruses. (It might be one of those things where
the chances of the newsletter containing a virus might be low,
but the impact if it does have one is very high in terms of
embarrassment, so maybe you do want to scan it...)
Otherwise, if you really want lower priorities for the
newsletter, the most obvious thing is to choose an additional
port for incoming SMTP and have the newsletter sent to that
port. Then you can have basically these four queue dirs with
a corresponding instance of sendmail for each:
/var/spool/mqueue.in
/var/spool/mqueue
/var/spool/mqueue.in.low-priority
/var/spool/mqueue.low-priority
And you'd have two instances of MailScanner, one moving messages
from /var/spool/mqueue.in to /var/spool/mqueue and the other
moving messages from /var/spool/mqueue.in.low-priority to
/var/spool/mqueue.low-priority.
You can, obviously, set the MailScanner that runs for the
low-priority queue to have fewer children, which will in a
sense reduce its priority. But if the objective is just to
have regular mail still responsive and operational while the
newsletter is delivered, putting them in separate queues should
be enough, even if equal resources are devoted to both queues.
- Logan
More information about the MailScanner
mailing list