我正在处理 Laravel 项目,即使队列中没有作业,我也需要连续运行
php artisan queue:work
命令。我已经设置了一个 Windows 任务计划程序任务来运行该命令,但问题是,一旦作业队列为空并且没有要处理的作业,工作线程就会停止。
我想确保工作线程无限期地继续运行,因此当新作业添加到队列中时,工作线程将自动拾取它们,而无需手动重新启动它。
是否可以配置 Windows 任务计划程序或修改队列工作线程行为,以确保即使队列中没有作业,它仍保持运行?
这是我迄今为止尝试过的:
我已将任务设置为运行
php artisan queue:work --daemon
,但当队列为空时任务仍然停止。
我检查了 Laravel 文档,但找不到针对此场景的任何具体解决方案。
有人以前遇到过这个问题或者可以提供一些指导吗?
其他详细信息:
PHP 版本:7.2
使用默认的
database
队列驱动程序
任务计划程序设置为启动时
预先感谢您的任何建议或解决方案!
也许你可以尝试用 nssm 将其变成服务
这里有一个指南