Laravel Scheduler每分钟运行,而不管指定的时间表如何

问题描述 投票:0回答:1

我在crontab中以以下方式触发了Laravel Schedule命令:

* * * * * php /home/forge/site/artisan schedule:run

这是通过伪造设置的。

然后,在app/Console/Kernel.php中,我触发我的工作按小时运行:

$schedule->job(new GetRecentArtists())->hourly();

但是它仍然每分钟运行一次。

我的理解是,工匠命令需要每分钟运行一次,以便可以检查作业计划,以查看该作业是否需要按照其特定的计划进行触发。

更新

我已尝试按照Sahidul的评论中的建议重新启动队列,并确认没有任何内置时间表(每小时,每天等)阻止它每分钟运行。

[当我从crontab中删除计划并通过php artisan schedule:run运行它时,我得到'没有计划的命令准备好运行,但是任务仍在运行。

php laravel cron scheduler
1个回答
0
投票

这是一条红鲱鱼。我的日志消息显示该作业正在该作业的__construct方法中运行,而不是在handle方法中运行。

作业在调度程序运行时被构造,然后被添加到队列中以按照调度执行-因此构造方法被立即调用,但是直到调度的时间才真正处理该作业。

© www.soinside.com 2019 - 2024. All rights reserved.