即使没有 Supervisor 运行,排队的作业仍在处理
Queued Jobs are still processed even without Supervisor running
这看起来很奇怪。我在我的 linux 服务器 (aws ec2) 上杀死了所有与 supervisord 相关的现有进程,但排队的作业仍在 processed/worked 上。
我通过 ps -fe
检查了进程,但没有找到任何 supervisord 运行 的进程。
谁能告诉我这是怎么回事?提前致谢。
所以总结这个问题,主管负责排队确保在你的 .env 文件中将队列驱动程序设置为 QUEUE_DRIVER=database
或 QUEUE_DRIVER=redis
。
如果queue driver设置为QUEUE_DRIVER=sync
那么所有的job都会被一个接一个的处理,supervisor根本不重要,甚至不需要安装。
您可能将队列驱动程序设置为 sync
,这会立即 运行 作业而不将它们发送到队列。即使您更新了 .env 文件,旧的配置也可能已被缓存。 运行 php artisan config:clear
以确保应用程序使用正确的队列驱动程序。
这看起来很奇怪。我在我的 linux 服务器 (aws ec2) 上杀死了所有与 supervisord 相关的现有进程,但排队的作业仍在 processed/worked 上。
我通过 ps -fe
检查了进程,但没有找到任何 supervisord 运行 的进程。
谁能告诉我这是怎么回事?提前致谢。
所以总结这个问题,主管负责排队确保在你的 .env 文件中将队列驱动程序设置为 QUEUE_DRIVER=database
或 QUEUE_DRIVER=redis
。
如果queue driver设置为QUEUE_DRIVER=sync
那么所有的job都会被一个接一个的处理,supervisor根本不重要,甚至不需要安装。
您可能将队列驱动程序设置为 sync
,这会立即 运行 作业而不将它们发送到队列。即使您更新了 .env 文件,旧的配置也可能已被缓存。 运行 php artisan config:clear
以确保应用程序使用正确的队列驱动程序。