On a related note...
I used to run a mail system with 2 million+ deliveries per day. We came
across some intresting issues during very high-volume email transmission
(and no it wasn't spam). We used Qmail and EzMLM (with a DB backend)

1) Limit the number of delivery threads on a per-domain basis. This is
very imporant if you have a lot of users with AOL accounts (or ATT for
that matter :-)).
2) Agressively "cull" SMTP sessions that last longer than say 10
minutes. This stops a trivial DOS attack clogging up the mail server
3) Timeout the delivery threads with an exponential back-off (Not sure
if this is done already)
4) Up-front spam rejection. Tell blocked senders and spammers to ****
off in the SMTP handler, not just within the mail processor itself. This
will cut down on server load.
5) Tar-pitting - slowing down connections that do a lot of "RCPT TO:" -
again using an exponential back-off

These are a few things that James needs to do to make a real-world,
volume solution. Qmail is not an elegant solution, but it is fast...

-- Jason

-----Original Message-----
From: Noel J. Bergman [mailto:[EMAIL PROTECTED]] 
Sent: 20 August 2002 04:48
To: James-Dev Mailing List
Subject: Lots of twisty, er, servers all the same ...


As you can see from the nslookup of ATT.NET that follows, they have lots
of MX records, all the same IP address.  On nights like tonight when
AT&T is jammed, this can block a delivery thread for over an hour.

Is there a reason why getMailServers [actually,
DNSServer.findMXRecords()] should not return a collection containing
only one entry per IP address?

        --- Noel

> set q=mx
> att.net
Server:  MACU.MA.MT.NP.ELS-GMS.att.net
Address:  199.191.145.136

att.net MX preference = 5, mail exchanger = gateway1.att.net att.net MX
preference = 5, mail exchanger = gateway2.att.net att.net MX preference
= 5, mail exchanger = gateway3.att.net att.net MX preference = 5, mail
exchanger = gateway4.att.net att.net MX preference = 5, mail exchanger =
gateway5.att.net att.net MX preference = 5, mail exchanger =
gateway6.att.net att.net MX preference = 5, mail exchanger =
gateway8.att.net att.net nameserver = ohcu.oh.mt.np.els-gms.att.net
att.net nameserver = macu.ma.mt.np.els-gms.att.net att.net nameserver =
orcu.or.br.np.els-gms.att.net att.net nameserver =
wycu.wy.br.np.els-gms.att.net
gateway1.att.net        internet address = 204.127.134.23
gateway2.att.net        internet address = 204.127.134.23
gateway3.att.net        internet address = 204.127.134.23
gateway4.att.net        internet address = 204.127.134.23
gateway5.att.net        internet address = 204.127.134.23
gateway6.att.net        internet address = 204.127.134.23
gateway8.att.net        internet address = 204.127.134.23
ohcu.oh.mt.np.els-gms.att.net   internet address = 199.191.144.75
macu.ma.mt.np.els-gms.att.net   internet address = 199.191.145.136
orcu.or.br.np.els-gms.att.net   internet address = 199.191.129.139
wycu.wy.br.np.els-gms.att.net   internet address = 199.191.128.43
>


--
To unsubscribe, e-mail:
<mailto:[EMAIL PROTECTED]>
For additional commands, e-mail:
<mailto:[EMAIL PROTECTED]>



--
To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>

Reply via email to