Laravel任务计划设置为每分钟运行但只运行一次

时间:2016-05-17 02:00:15

标签: laravel task scheduling

我正在使用Laravel任务调度。我定义了一个自定义command并将其设置为每分钟运行,如:

$schedule->command('dailyk')->everyMinute();

然后我使用以下命令来运行任务:

php /var/www/stockhit/artisan schedule:run 1>> /dev/null 2>&1

我使用log来检查我的自定义命令是否继续运行。但是,它不是每分钟运行一次。相反,它只运行一次。

如何让它每分钟运行一次而不是一次?

2 个答案:

答案 0 :(得分:3)

请参阅Task Scheduling

  

以下是您需要添加到服务器的唯一Cron条目:

     

* * * * * php /path/to/artisan schedule:run >> /dev/null 2>&1

     

这个Cron每分钟都会调用Laravel命令调度程序。然后,Laravel评估您的计划任务并运行到期的任务。

Laravel的任务调度程序不会留在内存中,它需要每分钟运行一次。然后它将检查在那一分钟内需要运行哪些任务并运行它们。 当您使用PHP运行任务调度程序时,它只运行一次,它需要cron每分钟运行一次。

答案 1 :(得分:2)

您需要添加一个cron作业。在ubuntu上使用命令

ReactNativeComponentTree

打开你的cron作业文件,然后添加

crontab -e