我在 crontab 中觸發了 Laravel schedule 命令:* * * * * php /home/forge/site/artisan schedule:run這是通過 Forge 設置的。然后,在app/Console/Kernel.php我觸發我的工作每小時運行一次:$schedule->job(new GetRecentArtists())->hourly();但它仍然每分鐘都在運行。我的理解是 artisan 命令需要每分鐘運行一次,以便可以檢查作業計劃以查看作業是否需要根據其特定計劃觸發。更新我已嘗試按照 Sahidul 評論中的建議重新啟動隊列,并確認沒有任何內置計劃(每小時、每天等)阻止它每分鐘運行。當我從 crontab 中刪除計劃并通過 運行它時php artisan schedule:run,我得到“沒有計劃的命令準備好運行”但任務仍然運行。
1 回答

回首憶惘然
TA貢獻1847條經驗 獲得超11個贊
這是一條紅鯡魚。我的日志消息顯示作業在__construct
作業方法中運行,而不是在handle
方法中運行。
該作業是在調度程序運行時構建的,然后添加到隊列中以按照計劃執行 - 因此會立即調用構造方法,但直到預定時間才真正處理該作業。
- 1 回答
- 0 關注
- 157 瀏覽
添加回答
舉報
0/150
提交
取消