0

我正在为用户构建一个工具来发送网站邀请。ActionMailer 是发送邮件的最佳方式吗?它似乎非常非常缓慢。

有人有其他建议吗?

(Ubuntu 无畏服务器)

谢谢。

4

2 回答 2

3

Action mailer 对你来说很慢,因为它是同步发送的,等待谷歌通过整个邮件发送协议。您可以在日志中详细查看这一点。在邮件发送完成之前,请求不会完成。

您有几个选项可以加快速度:

  • 使用异步发送。这可以来自诸如后台作业/延迟作业之类的工具,我建议从它开始。甚至可能有更轻量级的解决方案。如果这不能解决问题,starling 和 workling 会为此提供更强大的队列。

  • 附加到本地邮件发件人。您可以设置本地 smtp 服务器,或使用 send_mail 配置选项。

于 2009-09-19T16:08:04.437 回答
0

如果您认真对待发送邮件,您可能应该拥有自己的邮件服务器,我个人使用http://www.rackspacecloud.com/cloud_hosting_products/servers,您可以按照http://cloudservers.mosso.com/index 的说明进行操作。 php/Postfix__-_Installation (ubuntu hardy) 并让您自己的 postfix MTA 启动并运行(说起来容易做起来难)。我同意 ndp 关于异步发送的观点,但如果您要发送大量电子邮件,gmail 会限制您每天发送的最大消息数。这是我使用的方法,发送需要几毫秒,即使从其他服务器发送也是如此。

于 2009-09-20T03:52:03.310 回答