【发布时间】:2020-08-31 14:56:02
【问题描述】:
我第一次在我的 Laravel 项目中实现队列作业。但我在这方面遇到了一些困难,因为在php artisan queue:work 之后,终端上显示了注释。
让我描述一下,我尝试过的过程。
- 我的控制器功能,我试图从那里触发作业队列:
use App\Jobs\InitiateRecharge;
/
/*** Other Codes are here....
/
public function testQueueJob(){
InitiateRecharge::dispatch(1)->onQueue('initrecharge');
return 1;
}
- 我的 JOB 队列类:
<?php
namespace App\Jobs;
use Illuminate\Bus\Queueable;
use Illuminate\Queue\SerializesModels;
use Illuminate\Queue\InteractsWithQueue;
use Illuminate\Contracts\Queue\ShouldQueue;
use Illuminate\Foundation\Bus\Dispatchable;
class InitiateRecharge implements ShouldQueue
{
use Dispatchable, InteractsWithQueue, Queueable, SerializesModels;
protected $reportid;
/**
* Create a new job instance.
*
* @return void
*/
public function __construct($reportid)
{
$this->reportid = $reportid;
}
/**
* Execute the job.
*
* @return void
*/
public function handle()
{
sleep(10);
\Log::info('hello....');
}
}
- 我还迁移了作业表,并且还插入了行。
它没有给出任何错误,但作业预期的输出也没有出现......并且在终端中注意到正在改变。
请任何人帮助我 提前谢谢你:)
【问题讨论】:
-
更改后您是否运行
php artisan queue:restart?
标签: php laravel redis laravel-5.8 laravel-queue