+1  A: 

You're pretty much on the right track.

Your proposed solution should scale pretty easily if you ever need to add additional boxes. You could easily segment your user base, and have each of N boxes handle 1/N users. Preference and scripture data could either be read from a central DB, or replicated read-only out to the slaves. Slaves would maintain their own queue, potentially sending some kind of summarized status data back to the master system. Of course, you may find that everything runs fine from one box, and your first step to scale is to do some kind of round-robin to various SMTP servers. I imagine that the sendmail (or equivalent) queue could easily end up being your biggest, earliest, bottleneck.

I'd go ahead and build things out as you've planned, then very carefully run some tests to figure out where things get hung up.

timdev
Got it up and running! www.sendmescripture.com
Kirk