从传入的SES电子邮件触发事件的最佳方法

我想根据传入电子邮件的正文触发一些事件。我至少看到了使用SES和Lambda进行此操作的两种方法,我想知道它的优缺点。

  1. SES触发Lambda函数。由于SES仅在少数区域可用,这意味着Lambda函数也必须在这些区域之一中。这会将JSON对象传递给Lambda,其中包含标头,但不包含电子邮件内容。

  2. SES发布到snS,而Lambda函数订阅snS主题。 snS主题必须与SES位于同一区域,但是Lambda函数可以在任何地方。这样,Lambda函数可以接收完整的电子邮件内容,最大大小为150KB。

  3. SES将消息放入S3存储桶,然后S3触发Lambda。铲斗必须位于同一区域。这似乎过于复杂,可能需要更长的时间,因为需要额外的调用来获取S3对象。如果其他用户将对象放入同一存储桶,则可能会出现错误。这样,您可以使用最大10MB的电子邮件。

还有其他选择吗?还是我做错了什么?

smily_lydia 回答:从传入的SES电子邮件触发事件的最佳方法

我走了SES-> S3铲斗路线。我有一个S3事件,会在创建时触发lambda。然后,lambda读取电子邮件并将其移至另一个存储桶,并以$ {emailAddress} / $ {emailSubject}格式作为键,然后删除原始电子邮件。这使我可以在一些自动测试中根据电子邮件地址和主题组合(已知)以编程方式拉动正文。通常,这发生在一秒钟之内。 (今天看来运行速度非常缓慢...正在寻找原因,以至于导致我出现在这里)

本文链接:https://www.f2er.com/3104324.html

大家都在问