Ideas for future email software. (determine how close current open source email software already comes to doing these tasks)
Persistent program, checks an outbox or database for messages waiting to be sent.
Collects emails to be sent in grouped by domain, with a max group size or 3-5.
Never send to the same domain group twice in a row if possible.
Have entire email pre formatted and ready send. The email program should only need to grab the text and send it using the email communication protocols.
Keep the database local or nearby for quick access to pending email list and data
For bulk emails to the entire list, another server process should be handling the user list, filtering out emails, then pumping the email queue database full of emails. The email will only pull from the email queue and send, no other filtering logic should be required.
Bounces, stats, and unsubscribes should be handled by another process (but considered by the email handling process). Each main process could be scaled out to separate and then even multiple machines.
Handler would need to setup emails will all appropriate headers to maximize deliveribility.
A white listing manager would still be needed to make actual communication with email service providers.
[...] For the future email server software I could write. — 6:31pm via Steven Hansen [...]