拉拉维尔计划命令不运行



使用Laravel,我在Kernel.php中有一个cron,它似乎在等待运行时不会运行,如果我手动运行php artisan command-name,它确实可以运行。以下是我在Kernel.php中的内容,我不确定是什么让它每5分钟自动运行一次:

$schedule->command('command-name')
->everyFiveMinutes()
->withoutOverlapping()
->runInBackground()
->sendOutputTo(storage_path('logs/command-name.log'));

withoutOverlapping应该在存储文件夹中创建一个名为的文件

schedule_123456....

如果命令突然停止,此文件可能会保持未删除状态。我认为你必须手动删除它。

两件事:

  1. withoutOverlapping创建一个24小时的锁,避免运行相同的新实例,而runInBackground允许多个实例同时运行。我只使用两个选项中的一个
  2. 可以将参数传递给withoutOverlapping,使检查持续时间小于24小时

最新更新