即使作业队列为空,如何保持队列:工作在 Windows 任务计划程序中持续运行?

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

我正在处理 Laravel 项目,即使队列中没有作业,我也需要连续运行

php artisan queue:work
命令。我已经设置了一个 Windows 任务计划程序任务来运行该命令,但问题是,一旦作业队列为空并且没有要处理的作业,工作线程就会停止。

我想确保工作线程无限期地继续运行,因此当新作业添加到队列中时,工作线程将自动拾取它们,而无需手动重新启动它。

是否可以配置 Windows 任务计划程序或修改队列工作线程行为,以确保即使队列中没有作业,它仍保持运行?

这是我迄今为止尝试过的:

  • 我已将任务设置为运行

    php artisan queue:work --daemon
    ,但当队列为空时任务仍然停止。

  • 我检查了 Laravel 文档,但找不到针对此场景的任何具体解决方案。

有人以前遇到过这个问题或者可以提供一些指导吗?

其他详细信息:

  • PHP 版本:7.2

  • 使用默认的

    database
    队列驱动程序

  • 任务计划程序设置为启动时

预先感谢您的任何建议或解决方案!

laravel queue scheduled-tasks windows-task-scheduler laravel-jobs
1个回答
0
投票

也许你可以尝试用 nssm 将其变成服务

这里有一个指南

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