Here is what I perceive is our problem.
In our corporate environment, we have developed over 40 custom .Net applications (and growing). A good many of these send email notifications in some fashion. A few of these send "real time" notifications -- the user takes some action on the front end, which triggers an email sent. But most of the applications queue these notifications in a database table. A separate console app will then process these emails periodically. Note that each application has its own little console app which processes these emails. So we probably have a good 25+ little separate console apps that run all day, hitting tables in their respective application databases, using the .Net libraries to send mail.
This isn't the most horrible of things in and of itself but some applications send a TON of email -- to the tune of 100k+ per day. And if something goes wonky, we have to look at some console app to see what's the problem.
So the problem is two-fold: a) volume, and b) maintenance.
What I envision is, rather than some user action storing a mail record in the application database to be processed later by its own console app, that this action would queue it up in a central location (either send some web service request or MQ, whatever) for some central, dedicated application to process.
Basically, I think I want some optimized, centralized, enterprise email sending service where I can just hand it jillions of emails from any app. Not a email marketing software per se (although this may fall into that category) because that is more like defining templates, logging into a UI and emailing people on a list. Rather, I want to queue up mail dynamically for this thing to send. (As a bonus, other groups in our org could use this.)
I'd prefer some OTS, supported product, and not have to write it myself.
Anybody have any experience with something like this?