Tau*_*ren 6 email web-services
我正在运行一个Web服务,该服务目前通过gmail smtp服务器向新用户发送确认电子邮件.由于我每天只收到一些新用户,所以这不是问题.
我最近为webapp添加了新功能,需要每天向每个用户发送自定义消息.可以认为这与LinkedIn发出的常规消息类似,可以为您提供有关网络活动的状态报告.每个用户的消息都会有所不同.拥有数千名用户,这意味着每天都会发送数千条独特的消息.
编辑:我发现这些类型的电子邮件被称为"交易或关系消息".Spamtacular有一篇关于区分营销和交易电子邮件的好文章.
我不认为使用gmail的smtp服务器会再削减它,但我肯定不知道.我不知道每个帐户的gmail最大外发邮件数是多少(可能是100 /天),但它们会将邮件限制为每封邮件500个收件人.我不会向500个收件人发送单个邮件,但我将发送1000个自定义邮件,每个收件人每天收到一封邮件.
我有兴趣学习这方面的任何最佳实践(特别是对于基于Java的webapps).以下是我对它的一些看法和关注:
任何建议表示赞赏.我也对开源工具或简化操作的Web服务非常感兴趣,可以帮助我尽快提升.
谢谢!
关于你的第一个问题,是的,你应该建立自己的邮件服务器。使用 Gmail 来执行此操作可能会起作用一段时间,但当他们看到此类活动时,他们可能会在短时间内关闭您。您可以注册一个企业帐户并使用应用程序引擎发送消息。这是一个链接,其中包含有关该服务的邮件配额的信息。
关于您的第二个问题和第三个问题,最好让消息由网络应用程序排队并由集中服务发送,而不是让应用程序自行发送消息。
通常我只会使用数据库表作为队列 - Web 应用程序为它想要发送的每条消息插入行。服务/计划任务应用程序将从表中抓取新消息并将其发送出去。如果您想稍后切换邮件服务器,这将为您提供很大的灵活性;如果邮件服务器出现故障,则可以提供更好的可靠性;如果收件人无法收到邮件,则可以更轻松地进行诊断;并且可以重新发送邮件。至于使用 JMS/MQ 来做到这一点 - 可能没有必要。在我看来,用作队列的数据库表比实际基于 JMS 的队列系统具有更大的灵活性。
至于选择退出,是的 - 你应该给人们一种选择退出的方式。不过,我认为您不需要将消息标记为批量。