> Currently the smtp server that our clients use to send emails is the same > smtp server that is used by the "world" sending emails to our clients. > > Often we find that emails coming from the "world" being delivered to our > clients cause high load 40+ and then clients have problems sending > outgoing email. We are considering changing the MX record so that emails > being delivered to our clients will use a different smtp server ie > incomingsmtp.theirdomain.com and clients would use mail.theirdomain.com to > send emails.
It's pretty easy to setup seperate incoming and outgoing SMTP servers. I've been thinking a lot about this lately due to increasing spam and virus load as well as lots of new users being added to our system in recent months. The best setup I came up with (that we are currently in the process of deploying), uses a central mailbox depository server (that is also handling POP3 and IMAP that does no email scanning, several machines that handled only incoming SMTP (and do all the virus and spam filtering), and one or two outbound SMTP boxes will soon be added. The mailbox server has a big RAID and a lot of RAM, and a fair amount of CPU power to handled the IMAP processing overhead. Eventually it will do zero tasks besides that. It is built for big, reliable storage first, then attention to handling lots and lots of relatively small processes (hundreds of POP and IMAP connects). The incoming SMTP boxes are built with smallish (relatively) amounts of disk, lots of CPU and RAM. They handle all the virus filtering and spam stuff, and generally eat a lot of CPU time. Disk isn't a big concern with these since they basically just accept an inbound message, scan/filter it, and then pass the processed mail on to the central mailbox repository for storage. Their disks mainly are just queue and logs. The outbound SMTP boxes haven't been built yet, but will be essentially the same as the inbound SMTP boxes. All the SMTP boxes are load balenced with simple DNS round robin which seems to work fairly well. Everything user-wise and the spam preferences are handled by SQL which makes it easy to split the load up by task. > We use a total of 8 qmail servers, one for the storage of the email boxes > and the mysql DBs. One for a backup of this server and select queries for > the DBs. The other 6 qmail servers are used for pop3/imap/webmail/smtp. > > I was thinking we would use 2 servers for pop3/imap/webmail (load > balanced), 2 for incoming SMTP & Spam filtering, 2 for outgoing SMTP. Your setup sounds similar to what we are working on. We use dedicated webmail servers though since we have found that to be a very CPU intensive task and the users can tell when the webmail servers get loaded. You may want to consider using QMTP for inter-server mail transfers within your system though since it has some advantages in terms of speed and overhead, and when you have control of the sending AND the receiving mail server you can make it work. -Bill ***************************** Waveform Technology UNIX Systems Administrator