AaS*_*yay 5 smtp ruby-on-rails actionmailer mass-emails
我对ActionMailer有一些疑问:
Actionmailer如何连接到smtp服务器?
如果电子邮件数量高于1000,那么连接是并发还是并行?
如何发送像facebook那样的电子邮件(1000个数字)作为即时电子邮件会影响rails应用程序上的ruby以及actionmailer将如何处理它?
除了ActionMailer之外,还有任何其他解决方案/插件可以从RoR应用程序发送大量电子邮件吗?
- - - - - - - - - - - - - - - - - - - - - - - - 添加 :
我们需要每15分钟发送至少1000封电子邮件.我们使用Notes Domino服务器作为我们的smtp服务器.这种问题的可能架构是什么?我们已经将电子邮件存储在数据库中以便稍后发送,但是需要的是发送方法!
通常的做法是创建一个后台工作来发送电子邮件.ActionMailer非常适合单个电子邮件,但在发送多封电子邮件后往往会遇到麻烦,因为每封电子邮件都需要几秒钟才能完成.这就是我创建PostageApp以帮助解决这些问题的原因.
市场上的一些服务可以帮助您从Rails发送大量电子邮件:
所有这些都有通过单个API调用或SMTP事务发送多个消息的方法.
1) Actionmailer 通过一组参数(包括主机、端口和协议)连接到您的 smtp 服务器。
3) 由于执行许多同步任务,结果将导致站点速度变慢。
2 和 4)
Actionmailer 有点太慢了,无法在负载下发送大量电子邮件,请记住,这是一个同步操作,因此它并不是您想要在繁忙的网站上做很多事情的类型。
老实说,您最好不要从您的网站发送那么多电子邮件。它实际上并不是为了以这种方式使用而设计的。如果我必须发送这种卷,我会考虑在后台完成工作,像延迟作业这样的东西在这里会很好地工作,或者这里找到的许多异步轨道邮件程序之一可以解决这个问题。
您真正想在这里查看的是您想要满足的要求,网站是否绝对有必要负责以同步方式发送邮件?在大多数情况下,这个问题的答案是否定的。如果可以的话,最好将此类任务推迟到系统的其他部分,并尽可能保持站点的精简和集中。
您可以在配置文件中定义 SMTP 设置,如果留空,则使用 sendMail local
同时
多个处理程序
你也可以做 1000.times do email.deliver 但它可能会崩溃你的服务器
| 归档时间: |
|
| 查看次数: |
8359 次 |
| 最近记录: |