[Exim] 1.000.000 email delivered in single session

Pàgina inicial
Delete this message
Reply to this message
Autor: Alessandro
Data:  
A: exim-users
Assumpte: [Exim] 1.000.000 email delivered in single session
This is a case study and it's NOT for create a spamming system or
other terrible mail bombing system.
I HATE them !

Title: the best mode to deliver 1.000.000 email messages (recipient
and content all different) in few hours during a single delivery
session.

You suppose to have a SMP Linux server (i.e. dual P-III 800 Mhz, 512
MB Ram, SCSI Raid 5, kernel 2.4.9 and RaiserFS) and a good internet
connection (4 Mbit/sec full bandwidth) and a fast DNS server near me.

During the night a program running on the same server creates 1
million of email (getting user data and infos data from a SQL DB).
This process need about 3 hours. Meanwhile email are created, they
are "injected" in MTA queue (i.e. using qmail-inject or
exim -odq -t) and they are NOT delivered.
The email are all different but short: about 800-1000 bytes each and
the recipients are all different and are all remote.
So 1.000.000 x 1.000 bytes = 1 GBytes data. Yes, like a technical
information email system with personalized info for each recipient.

Then every day at 8.00 AM the remote delivery needs to start (exim -
q , qmail-remote) and delivery is done once per day.

Target: send 1 million of email in a very short time, shortest as
possibile, it must end as soon as possibile. Bandwidth occupation is
not a problem: we can use all 4 Mbit/sec (about 1 GB / 500
Kbytes/sec = about 2000 seconds , 1 hour and few minutes. 2 or 3
hours are ok anyway).

And now the questions:

1) QMAIL vs EXIM: which is the best MTA to manage 1.000.000 email in
queue ? (EXIM with option "split_spool_directory" and QMAIL patched
to have a more "deep" in queue tree)

2) EXIM can deliver all messages during a single SMTP session to the
same email system (useful for mass system like HOTMAIL,YAHOO, ....),
QMAIL no.
Is it faster to have either for example 300 (more or less) qmail-
remote process running and sending 1 messages each or for example
20 (more or less) "exim -q" process running sending more messages
in a single SMTP connection ? Remember: the target is to use less
time than possible.

Thanks for any suggestion about.