使用 Amazon SES 批量发送邮件

阅读数:14563 2011 年 1 月 30 日

Amazon Simple Email Service(SES)是构建在 Amazon 基础设施之上的批量、事务性的邮件发送服务,多年来已经向无数客户发送了大量邮件。SES 的主要任务之一就是提供这样一个服务:可以发送不被目标 ISP 拒绝的大量邮件,因为 ISP 会强制使用过滤手段以处理垃圾邮件,Amazon SES 的技术程序经理 Chris Wheeler强调说:

在发送第一封邮件前,你必须得做好规划。否则,你的邮件就会被放到垃圾目录中,也有可能发不出去,还有可能再也无法发送了。

为了避免有人使用 SES 发送垃圾邮件,Amazon 使用了几个策略。在发送前会通过编程的方式扫描每封邮件以确定是否是垃圾邮件,是否包含了恶意软件。被 Amazon 过滤器打上 spam 标签的消息是不会发送出去的,同时会告知用户,这样他们就能修改邮件内容了。如果消息通过了 Amazon 过滤器但由于垃圾邮件的原因被目标 ISP 拒绝的话也会告知用户。这样 Amazon 就能掌握某些用户发送的邮件质量了,Amazon 可以暂停某些发送垃圾邮件的账户,然后执行进一步的调查。

接下来,想要使用该服务的公司可以从一个“沙箱”开始,这是一个有限制的 SES 账户,每天最多可以发送 200 封邮件,每封邮件都需要发送给经过证实的地址才行。这有助于开发和测试发送邮件的应用,通过发送能够穿越过滤器的邮件可以获得良好的声誉。接下来就可以使用产品账户了,该账户可以向未经证实的地址发送邮件,但每天最多可以发送 1,000 封。这种限额可以根据用户的需要和其他几个因素(发送的邮件数量、拒绝的邮件数量以及由其产生的投诉数量)进行增加。当所有条件都满足,3 天后限额就会提高到每天 10,000 封邮件,2 周后又会提高到每天 1M 封邮件。每秒所能发送的邮件数量也有一个限制,开始是每秒一封邮件,最高是每秒 90 封邮件。联系 Amazon 并得到特殊的批复后每天或每秒就可以发送更多的邮件了。整个过程都是为了确保用户不会使用 SES 发送垃圾邮件。

可以使用编程的方式通过API访问 SES,API 中包含了验证地址、发送邮件、获得发送统计数据的方法。还可以使用命令行工具,或是通过 SES 路由 Mail Transfer Agent

如果你是 EC2 服务的用户并且每天发送的邮件数量不超过 2,000 封,那就可以免费使用 Amazon SES。需要发送更多邮件的用户就需要付费了,价钱是每 1,000 封邮件 $0.10。额外的费用用于支付进出 Amazon 的数据流量

查看英文原文:Sending Bulk Emails with Amazon SES

收藏

评论

微博

发表评论

注册/登录 InfoQ 发表评论