Laravel从代码中运行Queue工作

时间:2015-08-20 17:27:04

标签: laravel queue

我想启动队列:从我的代码级别开始工作,而不是使用任何工匠命令或其他主管,守护程序监听器,因此我不必在后台执行额外的队列侦听器。

这可能与否?如果不是,我怎么能在需要的时候让进程在后台运行

2 个答案:

答案 0 :(得分:1)

您可以使用以下命令从代码中调用artisan命令。

$exitCode = Artisan::call('queue:work', [
    '--option' => value,
]);

请注意,如果您致电queue:listener,代码将进入无限循环,这将导致现有流程挂起。

答案 1 :(得分:1)

您可以将config/queue.php中的队列驱动程序设置为sync。在队列中插入作业时,它将立即运行。