Server Fault is a question and answer site for system and network administrators. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I am about to setup a web application that consists of 2 app servers (running php/apache) and 2 db servers (ubuntu slices on slicehost).

The application will be sending approximately 5000 emails a day initially which will grow to 20k-100k within about 3 months as new features get rolled out.

I have never really administered a mail server before so I am not sure what kind of load will start impacting performance.

The mail server (postfix) will have spikes where it will go from 5 emails a minute, to 20k a minute. (although this might be staggered, lets assume its not staggered for now)

Given the basic outline above, do you think it would be beneficial to run another server (slice) which is purely a mail server (outbound, running postfix) thereby shifting all email load over to that server instead of the app servers. Or, is postfix efficient enough that there is no need and a separate server is possibly overkill?

If people could refrain from "Test it and see" that would be good, I am asking for people with experience to comment.

Additional note: Postfix will only be sending email, receiving email will be handled by google apps.

share|improve this question
Only outgoing email? Or will the email server handle any incoming and need to deal with spam filtering? – Devin Ceartas Aug 24 '09 at 0:38
Only outgoing. Incoming will be handled by google apps. – ae. Aug 24 '09 at 0:48
up vote 4 down vote accepted

Yeah, 20k a minute is going to be straining the system a bit. The bottleneck will be disk IO, with the system trying to write all the queue files and read them back and generally shuffle them all around, so a dedicated VM (or machine, with smokingly fast disks) is the way to go. Given that your mail probably isn't all that important, putting the spool on a RAM disk will give you significant performance gains at the cost of losing your queue when the machine reboots.

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.