我有一个插件,允许用户向朋友发送邀请。如果用户有大约4000个朋友,我们就会遇到麻烦。
目前,我使用下面这样一个简单的批处理来处理电子邮件。但我们也会发送facebook和twitter消息。用户不需要等到过程完成,实际上这是通过ajax调用调用的
set_time_limit(60*60);
if( $quantity < 40 ){
foreach( $emails as $email )
{
wp_mail( $email, $subject, $message, $headers);
sleep(1);
}
}
else
{
$counter = 0;
//Lets create batches
foreach( $emails as $email )
{
$counter++;
wp_mail( $email, $subject, $message, $headers);
sleep(1);
if( $counter == 50 )
{
sleep(10);
$counter = 0;
}
}
}
由于共享主机中通常不允许使用cron作业,因此我们考虑使用wp\\u schedule\\u single\\u event时,exec有时也不可用。应该是可能的,否则我需要试试
exec("doTask.php $arg1 $arg2 $arg3 >/dev/null 2>&1 &");
在后台运行流程的方法?