Laravel Mail::queue 非异步
Laravel Mail::queue not async
我有 laravel 5.1 队列的问题。
我已经在我的 Homestead 虚拟机中设置了 beanstalkd,所以我所做的就是将队列驱动程序从 default
更改为 beanstalkd
in config/queue.php
。我试过下面的代码,但似乎都没有排队。一旦我 运行 代码,它们都会同步触发。我什至没有触发 artisan queue:listen
命令。我做错了什么?
Route::get('/', function () {
// return view('welcome');
Queue::push(function($job)
{
Log::info("Dadas");
$job->delete();
});
$input = [
'name' => 'Mario Bašić',
'email' => 'email@me.com',
'comment' => 'Testing queues',
'subject' => 'Email subject'
];
Mail::queue('emails.test', $input, function($message) use ($input)
{
$message->to($input['email'], $input['name']);
$message->subject($input['subject']);
Log::info('sending');
});
});
确保更改 .env
文件中的驱动程序:
QUEUE_DRIVER=beanstalkd
将 config/queue.php
中的值更改为:
'default' => env('QUEUE_DRIVER', 'beanstalkd'),
如果在 .env
中为 QUEUE_DRIVER
设置了另一个值, 将不起作用。
我有 laravel 5.1 队列的问题。
我已经在我的 Homestead 虚拟机中设置了 beanstalkd,所以我所做的就是将队列驱动程序从 default
更改为 beanstalkd
in config/queue.php
。我试过下面的代码,但似乎都没有排队。一旦我 运行 代码,它们都会同步触发。我什至没有触发 artisan queue:listen
命令。我做错了什么?
Route::get('/', function () {
// return view('welcome');
Queue::push(function($job)
{
Log::info("Dadas");
$job->delete();
});
$input = [
'name' => 'Mario Bašić',
'email' => 'email@me.com',
'comment' => 'Testing queues',
'subject' => 'Email subject'
];
Mail::queue('emails.test', $input, function($message) use ($input)
{
$message->to($input['email'], $input['name']);
$message->subject($input['subject']);
Log::info('sending');
});
});
确保更改 .env
文件中的驱动程序:
QUEUE_DRIVER=beanstalkd
将 config/queue.php
中的值更改为:
'default' => env('QUEUE_DRIVER', 'beanstalkd'),
如果在 .env
中为 QUEUE_DRIVER
设置了另一个值,将不起作用。