【发布时间】:2017-01-06 01:16:21
【问题描述】:
我正在使用 PHPMailer 库来处理从我的应用程序中发送电子邮件。
问题是,当某些电子邮件被触发发送时(例如,当联系表单提交、新用户注册等时),页面加载可能需要 1-3 秒,而电子邮件是发送。如果发送邮件出现问题,延迟可能会更长。
我正在考虑将任何需要发送的电子邮件保存到我的数据库中的pending_emails 表中,然后每分钟运行一个 cron 作业,它会发送所有这些电子邮件,然后将它们从表中删除。
我的问题是,这看起来合乎逻辑吗?每分钟运行一个 cron 作业与在运行时发送电子邮件相比,我应该有任何潜在的资源问题吗? (我需要经常运行 cron 作业,因为有人可能正在等待紧急消息,例如“重置密码”电子邮件)
【问题讨论】:
-
替代上面的选项创建一个邮件脚本,您可以从命令行调用然后运行
exec('script >pipe output ot stop blocking');您的主脚本将立即继续,但它对于错误处理不是那么好。我称之为穷人多线程
标签: php