On Feb 29, 2008, at 1:52 PM, Ken Price wrote:

>> The MTA has to be able to receive 50k/second in bursts and get  
>> them out
>> as quick as possible. Probably not as fast as coming in but from  
>> what I
>> understand delivery speed is important.
>> It's coming from some sort of SQL server that they say can deliver it
>> that fast.
>
> Don't think one server.  Think multiple, less powerful servers.  50k
> unique messages a second isn't a realistic goal from a single server.
> Theoretically, you're talking 50k outbound connections to remote MX
> servers.
>
> Also, and I hate saying this, but the advanced features, flexibility,
> and functionality that make Exim so great will also hinder you.  You
> don't need a full blown MTA here.  Don't hate me, but I REALLY
> recommend Qmail in this application.  It's fast, lightweight, and for
> this application ... simple.  Might as well go with djbdns on the
> local machines for DNS caching, too.


I do a lot of architectural consulting for scalable systems and my  
sense is the following:

If they have some app that can lay down 50K emails in one second what  
needs to be happening is not SMTP, but something that directly drops  
those messages into an MTA's queue directory.

And that MTA should NOT be Exim. Exim is the cat's meow for being  
able to PROGRAM your inbound email. A high-performance SMTP delivery  
system it is not. Mr Hazel has stated so himself.

And for the reason that Marc mentioned (non-RFC compliant behavior in  
regards to MX records) and a few others, it should NOT be Qmail.

The MTA I would recommend for high speed delivery of these messages  
is Postfix. A highly tuned Postfix configuration at that.

As for your hardware, you want a server with LOTS of RAM, dual quad  
core, local caching name server, and a VERY fast disk subsystem.

If the application really does call for SMTP for initial delivery out  
of the App, then the executable that sending these will be making TCP  
connections directly out of the app to an STMTP server. And, as Ken  
rightly suggests, this calls for multiple servers configured as above  
sitting behind a Load Balancer. You need to pipeline as much as  
possible out of that app, and that takes tuning.

MY 2 cents.


Brian


-- 
## List details at http://lists.exim.org/mailman/listinfo/exim-users 
## Exim details at http://www.exim.org/
## Please use the Wiki with this list - http://wiki.exim.org/

Reply via email to