使用电子邮件队列和php exec()是最好的方法之一.
它会在需要时触发(避免使用CRON),因为称为背景,并且立即触发.
1.电子邮件队列.
使用插入来获取表的MySQL中的所有字段,例如:
$queryIN="INSERT INTO email_queue (date,subject,body,destination,idle) values (...)";
mysql_query($queryIN);
这很重要,因为您需要一个独立的后台流程,因此注册和审核所有外发电子邮件也是一个好主意.
2. PHP exec().
在MySQL中插入后是时候调用外部执行:
exec("wget -qO- http://domain.com/index.php?process_email_queue=1 &> /dev/null &");
>请注意,wget -q0-和&>中的选项… / dev / null&不输出需要,并作为后台进程调用.
3.相同的脚本文件index.php或其他用于处理队列调用:
这样,它将调用我们的index.php(您可以使用其他名称文件),并处理传出:
if ($_GET['process_email_queue']==1) { ...code for sending idle emails queue... }
也许你必须触摸exec()的一些php.ini选项,这不是什么大问题.
一切正常运行后,您将提供更好的Web导航和电子邮件处理,以实现快速响应和零等待.
在某些情况下,您将从等待直接电子邮件2.60秒传递到queue-exec-background 0.024秒,这样可以更快地提高x11.