[geeks] (no subject)

Big Endian bigendian at mac.com
Wed Jan 9 11:17:45 CST 2002


>It might be a good idea to have the web stuff submit messages via SMTP
>rather than call /usr/sbin/sendmail (or whatever it is) directly.

This is how it works now... unfortunately the way things are coded it 
presents the same issue.

>  > I'm about to rewrite the queue sorting code in C (its
>>  sh/awk/grep/sed now)  but it still has scalability issues.  Right now
>>  this system only handles 40k messages a day but it needs to scale to
>>  10 or 100 times that.
>>
>>  I've been toying with the idea of building a new MTA for this express
>>  purpose (QoS for email).  I would have to setup a way to handle
>>  queueing based on the message priority, destination domain, message
>>  length and message class.  I'm not too worried about security issues
>>  with it as its on a production box that only talks to the world
>>  through a NAT system.  Any ideas on how to go about this?
>
>First: Sendmail is *not* what you want.  Not flexible enough.

I agree... but I've tried qmail and postfix and neither have done 
what I want/need, so far sendmail has done what I needed.

>I have the most exprience with Exim, so that's what I'll use in my
>examples:
>
>1) It's trivial to delay delivery to arbitrary domains; you can specifiy
>different retry times based on the local-part, the domain, any
>combination you can specify with with a Perl compatible regular
>expression, or with a database lookup (which may be too expensive for
>your needs).  However, Exim will still try to deliver the bulk messages
>as soon as it gets them...

Retry times aren't the issue... its the messages that are stacking up 
in /var/spool/mqueue and it has to try each one regardless of where 
its bound or what class of message it is.

>2) Pass the bulk messages to a different system that has very long
>periods between queue runs.

Similar to what we have now... only it runs on the same box. It takes 
all the bulk messages out of the queue every 5 minutes.

>3) Certain domains can be held, up to the time limit specified in it's
>retry configuration.  Non-bulk messages are not effected, and are
>delivered normally.  During non-busy times, a simple script can take
>these domains off-hold and initiate a queue run or two.


>4) In a variation of #3, a script can parse the output of `mailq` to
>locate a message going to a held domain and "manually" initiate a queue
>run for that message.

daniel
-- 
-----------------------------------------------------------------
"Fragile. Do not drop." -- Posted on a Boeing 757.



More information about the geeks mailing list