【发布时间】:2010-12-20 18:28:44
【问题描述】:
我正在考虑如何处理从我的网络应用程序发送大量电子邮件,以及这样做是否有任何最佳做法。 StackOverflow 已经将其标记为“主观”,这在一定程度上可能是这样,但我需要知道实现该系统的最成功方法,或者是否存在任何标准化方法。
在我的 webapp 中,有一些用户是 1 到 10,000 个用户组的负责人。该用户必须能够通过我的系统通过电子邮件向所有这些用户发送消息。因此,我的系统负责向每个组长的个人用户发送多达 10,000 封电子邮件。
据我所知,GMail 对向个人发送邮件没有速率限制(尽管最多有 500 个收件人)。
现在,我当前的设置是:
- 当消息通过系统发送时,它会进入电子邮件队列。
- cron 脚本每隔几分钟从队列中抓取消息,然后发送这些电子邮件。
- 所有电子邮件都通过 GMail 的 SMTP 服务器发送。
- 执行邮件的实际应用程序是 PHPMailer。
随着用户群的增长,这种设置可能不够用。我的问题是:
- 我应该改用本地 SMTP 服务器吗?
- 我应该在本地机器上使用邮件二进制文件吗?在这种情况下,我可以完全跳过队列吗?
- 是否有公认的方法来做到这一点?
谢谢!
【问题讨论】:
-
感谢大家的回答,尤其是Alfred,特别详细的回答。只要我的声望得分超过 15,我就会给你们投票。