C# 如何为注册用户群处理大量电子邮件警报系统

C# 如何为注册用户群处理大量电子邮件警报系统,c#,email,sql-server-2008-express,alerts,massmail,C#,Email,Sql Server 2008 Express,Alerts,Massmail,我有一个客户谁想开发一个系统,处理发送警报电子邮件,选择在注册用户。警报基于地理旅行相关事件,并通过第三方web服务提供。注册用户群预计约为500000名用户,每个用户可以订阅多个警报类别 我只是想找出创建此警报功能在技术上需要什么。在我看来,我们将创建如下内容: 每小时轮询一次警报服务 将警报“队列”存储在临时数据库表中 将队列表作为计划任务进行处理,并将电子邮件发送给选定的用户 我真的不确定的部分是电子邮件的物理发送。我想知道这里是否有人能推荐一些好的选择。我想我们要么创建一个自定义组件

我有一个客户谁想开发一个系统,处理发送警报电子邮件,选择在注册用户。警报基于地理旅行相关事件,并通过第三方web服务提供。注册用户群预计约为500000名用户,每个用户可以订阅多个警报类别

我只是想找出创建此警报功能在技术上需要什么。在我看来,我们将创建如下内容:

  • 每小时轮询一次警报服务
  • 将警报“队列”存储在临时数据库表中
  • 将队列表作为计划任务进行处理,并将电子邮件发送给选定的用户
我真的不确定的部分是电子邮件的物理发送。我想知道这里是否有人能推荐一些好的选择。我想我们要么创建一个自定义组件来发送电子邮件,要么使用专用的第三方服务(比如dotMailer?或者自定义的群发邮件服务器?)。我已经读到,如果你不小心的话,推出你自己的解决方案会有被列入黑名单的风险,很明显,我们希望这一切都是完全合法的

我还应该提到,我们将寻求使用.NET(C#)创建解决方案,我们仅限于SQL Server Express 2008版

有什么想法吗


非常感谢您的轮询、排队和发送操作。我将创建一个windows服务,该服务调用外部服务,对数据进行操作,然后收集结果以发送电子邮件,必要时使用发送标志更新数据库等

我最近处理了一个类似的项目,当我们提到大量电子邮件时,我们发现许多ISP或主机提供商都非常紧张。您应该明确查看CAN垃圾邮件指南(或您所在地区的类似指南)

只要您遵守规则并遵循指导原则,您就可以从本地邮件服务器发送邮件,但重要的是,您必须确保MX记录上的DNS查找或反向DNS查找都正确地指向彼此。事实上,向第三方邮件提供商或ISV提供源代码会更容易,但当我们尝试时,却找不到合适的源代码,结果我们自己也这么做了


此外,您可能希望浏览SPF记录和其他方法,以增加大量电子邮件发送!由于SMTP(我最不喜欢的协议)很难调试,如果收到多封或未经请求的电子邮件,人们会感到非常不安,因此,请确保您有一个选择加入策略和适当的检查,以防止重复传递。

感谢您的回复,这非常有帮助。我也在考虑创建一个windows服务。我将研究一下你提到的一些要点。我可以问一下,当您评估第三方邮件提供商时,您想要的标准是什么?或者是什么让你最终选择自己创建它?很抱歉,由于公司协议等原因,我不能给出关于供应商等的任何细节。然而,我们选择自己创建它,因为我们接触的组织对代表我们托管此类服务一点也不感兴趣,因为他们要么不提供该设施,要么他们的网络不接受从系统外部发送的电子邮件。最后,我们自己做这件事就不那么匆忙了。作为替代方案,您可以雇佣Windows&Exchange管理员类型,并将MX记录DNS的所有设置等工作卸载给承包商。