问题描述
我第一次在Laravel项目中实现Queue JOBS。但是我在上面遇到了一些困难,例如在PHP artisan queue:work
之后,终端上正显示该提示。
让我描述一下我尝试过的过程。
- 我的控制器功能,我试图从该位置触发作业队列:
use App\Jobs\InitiateRecharge;
/
/*** Other Codes are here....
/
public function testQueueJob(){
InitiateRecharge::dispatch(1)->onQueue('initrecharge');
return 1;
}
- 我的作业队列类:
<?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....');
}
}
- 我还迁移了jobs表,并且在该表上也插入了行。
它没有给出任何错误,但是Job预期的输出也没有到来..并且在终端中注意到被更改了。
请任何人帮助我 预先谢谢你:)
解决方法
尝试php artisan队列:收听--tries = 1