【发布时间】:2014-01-29 15:55:37
【问题描述】:
我只想在用户注册时排队发送电子邮件。因此,当用户发布注册表单时,我会这样做:
Mail::queue('emails.activate', $data, function($message) use ($user)
{
$message->from('no-reply@mysite.com', 'Mysite.com');
$message->to($user->email, $user->username)->subject('Welcome');
});
队列侦听器正在运行(php artisan queue:listen),主管进程确保它在停止时会重新启动。
它有效,用户收到电子邮件,但注册时的 HTTP 响应非常慢,正如我尝试直接发送电子邮件时所期望的那样。如果我把上面所有的排队代码都注释掉,HTTP响应时间就好了。
我在 queue.app 中使用同步驱动:
'default' => 'sync',
'connections' => array(
'sync' => array(
'driver' => 'sync',
),
etc...
最后,我用 postfix 运行了我自己的私有服务器(Ubuntu)。有人可以帮我弄清楚为什么我在排队时回复这么慢吗?
【问题讨论】: