Amazon SES(简单电子邮件服务)自称为“高度可扩展且经济高效的批量和交易电子邮件发送服务”。
从我可以收集的所有内容,以及通过浏览AWS SDK以及SES指南和API,它看起来很适合交易电子邮件(即以一次性方式发送的应用程序电子邮件),但我找不到任何关于批量发送电子邮件。
基于价格点,亚马逊显然希望/需要客户发送大量邮件。
您(作为实施Amazon SES的人)期望每封电子邮件发送个人电话吗?
即。如果您要向200,000个收件人发送营销电子邮件,您是否真的通过curl(或其他)或使用AWS sdk向SendEmail或SendRawEmail发出200K请求?
这似乎不切实际。
答案 0 :(得分:6)
现在,文档明确指出每封邮件you can add up to 50 recipients。因此,您可以批量分配发件人列表;对于200k收件人,您必须进行4k API调用。散装邮件不是非常方便;我猜亚马逊没有为这种特殊用途定位他们的服务。
答案 1 :(得分:4)
如果你看一下the API reference,你肯定会在每次请求时一次发送到多个帐户。
SendEmail需要“目的地”类型为“目的地”的参数。
目的地有三个属性:ToAddresses,CCAddresses,BCCAddresses - 都是“string list”类型。
如果您查看开发者指南中的示例请求,您会看到它将目标地址指定为类似于以下内容的参数:
&Destination.ToAddresses.member.1=allan%40example.com
我准备出局并猜测一个'字符串列表',他们期望多个地址的格式类似于:
&Destination.ToAddresses.member.1=allan%40example.com
&Destination.ToAddresses.member.2=other%40example.com
&Destination.ToAddresses.member.3=asdfq%40example.com
...
&Destination.ToAddresses.member.1000=final%40example.com
我实际上偶然发现了你的问题,寻找我自己关于SES的一些问题的答案 - 但是文档已经足够完整,但并不总是非常有用 - 你经常需要做一些有趣的推论才能得到答案 - 对你来说只是一个公正的警告!
干杯!
编辑:我可能会从您在自我回答中发布的报价中提取另一件事:
通过修改软件直接调用Amazon SES,或重新配置它以通过Amazon SES SMTP中继传送电子邮件,如上所述。
如果您设置了自己的SMTP服务器,并且只是通过SES进行中继/转发,则可能会处理您的排队/等。你可以发射几千封电子邮件,你的SMTP服务器会在它到达亚马逊之前处理排队/等等。
答案 2 :(得分:4)
感谢NuclearDog, 经过进一步审查,我认为问题的答案是重复调用api,x次(低于SES FAQ)。
假设我们发送了200K邮件。首先,我非常有兴趣知道我们可以在一个邮件中添加多少“ToAddresses”的现实限制。一旦我们知道了,我们就可以批量发送一次100个左右的“ToAddresses”组。
其次,与大多数批量邮件一样,每个收件人的内容略有不同,即使它只是一个“Hello”简介。鉴于邮件正文虽然类似,但每封电子邮件都会有个性化,我相信期望只是一遍又一遍地调用api。我想也许有一些方法可以通过一次调用排队多个电子邮件,然后进行发送,但考虑到API的性质,这可能不太现实。
使用其中一个亚马逊AWS数据库产品,SES可能会以这种方式更具可扩展性。
现在,我想我必须实现一个队列或消息系统,以高效的方式调用api X次,以便所有api调用1)不需要一整天,2)不要对我们征税系统太多了。
问:我可以使用Amazon SES发送批量邮件吗? 电子邮件?是。只需拨打SendEmail即可 或者反复使用SendRawEmail API 您要发送的每封电子邮件。 亚马逊EC2上运行的软件 弹性MapReduce,或您自己的服务器 可以撰写和发送批量电子邮件 以最好的方式通过亚马逊SES 适合您的业务。如果你已经 拥有自己的批量邮件软件, 它很容易更新以提供 通过亚马逊SES - 或者通过 直接修改软件 调用Amazon SES或重新配置它 通过Amazon SES发送电子邮件 SMTP中继如上所述。
答案 3 :(得分:0)
您可以使用他们的Simple Queue Service发送批量电子邮件。