【发布时间】:2013-11-26 17:25:32
【问题描述】:
我有一个高尔夫联赛计划的用户可以向他们的成员发送电子邮件。平均会员人数为 40 人,但有些联赛可以拥有多达 150 名会员。
电子邮件脚本使用 phpmailer 向每个成员发送个性化消息,并且运行良好。我有一个邮件页面,在脚本执行时显示发送 gif。每封电子邮件只需不到 1.5 秒的浏览器时间(在我的连接上)即可执行,因此根据发送的电子邮件数量,浏览器可能会被占用几分钟。
我想做的是将执行传递给服务器并将浏览器释放给用户,这样用户就不会盯着加载图像。
我可以通过将邮件数据存储在数据库中,然后每隔几分钟运行一次 cron 来执行邮件脚本,但我担心 cron 持续运行会导致什么问题。
有没有更好的方法来做到这一点?我确实想留在 PHPMailer
【问题讨论】:
-
使用
exec()-type 的东西来启动一个在后台执行的cli 脚本,或者将当前的PHP 脚本分叉到后台并在那里发送邮件。