我正在创建一个脚本,用于发送具有不同主题和动态消息的批量电子邮件。我正在使用循环和php邮件功能来发送邮件。当我运行脚本时,它将花费很长时间发送所有电子邮件,并消耗高CPU使用率。你有任何建议或任何快速运行的脚本,并在没有高CPU负载的情况下一次发送500封电子邮件。
由于
答案 0 :(得分:1)
来自PHP文档
注意:值得注意的是mail()函数不适合 循环中的大量电子邮件。此功能可打开和关闭 每封电子邮件的SMTP套接字,效率不高。为了 发送大量电子邮件,请参阅»PEAR :: Mail,和» PEAR :: Mail_Queue包。
我建议使用PHPMailer。
您还应考虑在单独的线程中处理脚本。
答案 1 :(得分:1)
如果您没有使用mailer
系统,那么您使用的queue
无法扩展您的解决方案。处理耗时的专门发送电子邮件的任务应该是后台任务,由queue
处理。
如果您的应用处于开发的早期阶段,最好使用像Laravel这样具有内置queue system的框架。我强烈推荐它。
如果不是更好地关注这些帖子,他们会展示如何将队列系统纳入基本的php应用程序。
正如@icy2k建议的那样,PHPMailer将是内置mail()
功能的更好选择。所以对他而言,要点出来。如果您计划使用Laravel,则它具有内置强大的mailer系统。