Question

My application needs to send thousands of emails on a daily basis.

So I thought about writing my own smtp server, using C#, which would pull a database every minute to see if there are any pending email messages.

But, then I came across Microsoft's IIS SMTP service....

My question :

Can the IIS SMTP service handle that amount of outgoing emails, and is it reliable? Or should I reinvent the wheel and write my own?

Thanks

Was it helpful?

Solution

Yes, IIS SMTP can handle it.

OTHER TIPS

Yes iis SMTP should be fine. But there are few things you should consider.

  1. Load test the server : This will give you the maximum number of emails which can be sent at a time.

  2. If you are planning to send large number of emails, its better to "sleep" after sending few emails and then continue with the rest.

  3. I once wrote a cron job to send out emails in a short interval and I made a mistake of not checking the status of the previous job. A job crahsed in between and the second one started sending emails to the same address which crashed and then the next one started......

Only reinvent the wheel only if you can design a much much better wheel ;-)

I would consider using 3rd party services. This is not cheap, and there is good reason they charge money for that. 1st, if you plan on sending high volume of emails on regular basis, you need to build trust relationship with major email vendors: definately gmail, hotmail, yahoo, excite, altavista, etc. That relationship will take a while, but is well worth it. Without that, your server will get banned very fast. Check out iContact, Mailchimp, or Aweber.

Good luck

I would suggest you do some load testing on the SMTP server to make sure it handles the load you are expecting to put on to it.

I would not suggest you reinvent the wheel by building your own SMTP server. If you find the IIS SMTP performance is not up to scratch you could try and find an open source one.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top