gpt4 book ai didi

ruby-on-rails - 向大量收件人发送电子邮件的最佳实践 (Rails + SendGrid)

转载 作者:行者123 更新时间:2023-12-03 12:24:03 24 4
gpt4 key购买 nike

我将从 Rails 应用程序发送大量电子邮件并计划使用 SendGrid。我假设最好向每个收件人发送一封单独​​的电子邮件(而不是为所有收件人使用密件抄送)。如果这是真的,我应该使用像 DelayedJob 这样的东西来排队发送到 SendGrid 的消息,还是一次抛出 500 条消息是否安全?谢谢!

最佳答案

500 条消息对于 SendGrid 来说真的不算多。这甚至不是他们雷达上的一个小插曲。我为一家在一个月内发送了 270 万封电子邮件的公司工作,即便如此,这也只是昙花一现。

使用 SendGrid API 的功能,您不会发送 500 封电子邮件,而是发送一封具有特定 SendGrid API header 集的电子邮件。为什么?因为您是否曾尝试发送 500 封单独的电子邮件并计算需要多长时间?一封电子邮件怎么样?单个电子邮件会更快。

SendGrid API 有一个 Ruby 示例,如下所示:
https://sendgrid.com/docs/Integrate/Code_Examples/SMTP_API_Header_Examples/ruby.html .

那是相当冗长和困惑的,所以让我为你简化它。基本上,您在电子邮件中设置:

headers["X-SMTPAPI"] = { :to => array_of_recipients }.to_json

然后,SendGrid 将对其进行解析,然后将您发送的那封电子邮件发送给该收件人数组。我似乎记得他们要求您将其限制为每封电子邮件约 1000 个收件人,因此如果您愿意,最好将其拆分为多封电子邮件。那时你会引入像 delayed_job 这样的东西。或 resque gem 来处理它。

哦,顺便说一句,您仍然需要指定 to这封电子邮件的地址只是为了让 Mail gem 开心。我们有 info@ourcompany.com为了那个原因。

SendGrid API 还将在其电子邮件中支持过滤器,因此您可以使用占位符字符串,例如 {{ firstname }}并且,假设您使用 SMTPAPI header 发送它,它将对电子邮件进行“邮件合并”并对其进行自定义。

如果您阅读 SendGrid API 文档,将会对您有很大帮助。它真的很有用,而且它们提供的功能非常强大。

关于ruby-on-rails - 向大量收件人发送电子邮件的最佳实践 (Rails + SendGrid),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7825465/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com