Setting up High Performance SMTP to send 300,000 mails daily

Posted On // Leave a Comment

I'm working on a project for a salesforce app for a 15 years old portal with a massive user base of around 3 Million subscribers and growing. The App sends our around 10,000 to 30,000 Transactional Mails like daily Birthday mailers, personal evaluations, predictions and other notification & the company sends Mailer campaigns 2-3 times a month to whole user base and want to increase the frequency.


They have been blindly doing it from their 2 Servers, but now want an organized environment with detailed Reporting on Delivery, open and Click Tracking of transactional as well as Campaign mails.


Outsourcing this to an ESP like Mandrill & sendgrid is being considered, however the costs are exorbitant for the client right now, and they have asked me to design and setup something "self hosted". Hence I seek some education in trying out a cost effective solution for the above scenario I have quite a good experience in Windows, and fairly good at Exim on Debian so I’m open to going either way… not biased to OS choices.



I’m also fully aware of all details for a setting up a functional mail server, like SPF, DKIM, rDNS, Forward rDNS A record etc.



Cost of hosting a VPS (win or linux) is fairly cheap nowadays, and since the mailing server will not have any other services like Web, DB, incoming Mails, etc., I guess I’ll be good to go with a 2GB KVM SSD VPS. Please suggest!


Now the question I’m facing myself is, that all in all I will need a very efficient SMTP system to be able to send out 3 to 5 mails per second… and even more if they demand. I’ve been reading a lot and want to know if Exim is capable of sending mails @5mails/sec so that I can achieve threshold of 15000 mails and hour. I understand that I’d need to pause and delay in between to avoid Gmail/Hotmail/Yahoo banning me for SMTP flood.


I’m a bit perplexed and Anxious as I’ve not dealt with such huge mailing requirement uptill now so please bear with my questions to follow, I certainly seek education and information in meeting this challenge efficiently.




  1. Even at 5mails/sec speed it will take me 2-3 days to cover the complete mailing list. Can I open additional mail queues within Exim/Windows SMTP to parallel send mails from 4-5 or more different mail queues?




  2. If not, can I setup 2-3-4 separate VPS instances, and distribute mailing list into respective chunks (say alphabetically ordered) and make the VPSs send mails in parallel.




I’m wondering what MTA system/software are big ESP services like Mandrill, Sendgrid, constant Contact using. I’m sure they are home baked speciality but still there must be some starting point to learn.


That said I also need recommendation what software to use to manage my mailing list, Newsletter and Sending capabilities. Most important aspect is managing bounces (both hard/Soft) and one click unsubscribe for users. Again I’m open to get PHP/python web based software or even use a windows desktop app ( I can use remote Desktop to windows VPS).


Thanks for reading up this long… To summarise, I need suggestions to setup a high speed Mail Sending system @5mails/sec and also manage my mailing campaigns, list, unsubscribe features through a good software.


http://ift.tt/1dvHQ0Z

0 comments:

Post a Comment