多个调度如何在Laravel中工作

时间:2016-11-14 10:36:15

标签: laravel scheduled-tasks scheduling

我在laravel kernel.php文件中有几个shceduling进程

 protected function schedule(Schedule $schedule)
{
    $schedule->call('App\Http\Controllers\firstController@index')
             ->everyMinute()->name('firstController_cronjob')->withoutOverlapping();
    $schedule->call('App\Http\Controllers\secondController@index')
             ->everyMinute()->name('secondController_cronjob')->withoutOverlapping();
    $schedule->call('App\Http\Controllers\thirdController@index')
             ->everyMinute()->name('thirdController_cronjob')->withoutOverlapping();
}

我的问题是如何完成这三个cronjobs?将逐个运行的任务或服务器将在一个请求中创建三个作业?

由于

2 个答案:

答案 0 :(得分:0)

计划方法将逐行运行,因此第一个计划将每分钟运行firstController @index,此结束后第二个被触发,第三个。 withoutOverlapping将注意所有这些都不会与其他一些cron作业重叠。

这是文档的链接。请阅读它以便更好地抓住laravel中的cron作业。 https://laravel.com/docs/5.3/scheduling#defining-schedules

答案 1 :(得分:0)

请查看文档here

默认情况下,同时调度的多个命令将顺序执行