You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Laravel Horizon:如何确定Supervisor节点上实际运行的进程?

查看Laravel Horizon指定Supervisor节点运行进程的方法

在Laravel Horizon里,Pending状态的任务包含延迟执行、等待槽位、正在运行或Horizon终止导致的孤立任务。要确定指定Supervisor节点上的实际运行进程,完全可以通过查看进程列表、Redis队列信息或Artisan命令实现,具体操作如下:

一、查看服务器进程列表

  • 用系统进程命令过滤Horizon相关进程:执行 ps aux | grep horizon,能直接看到当前节点上所有Horizon worker进程的ID、运行状态、启动参数等信息。
  • 结合Supervisor自身命令查看:执行 supervisorctl status,可以看到该节点上Supervisor管控的Horizon进程组状态,以及每个worker的具体运行状态(比如running、stopped),精准定位Supervisor管理的进程。

二、通过Redis队列信息查询

Horizon的所有进程和任务状态都存在Redis中,直接操作Redis就能获取:

  • 连接Redis后,执行 SMEMBERS horizon:processes,这个集合存储了所有活跃Horizon进程的标识,包含进程ID、所属Supervisor节点、负责的队列等信息。
  • 查看worker详细状态:执行 HGETALL horizon:workers,返回的哈希表包含每个worker的运行状态、当前处理的任务ID、运行时长等,能判断进程是否在实际运行。

三、使用Laravel Artisan命令

Horizon提供了专属Artisan命令来查看进程状态:

  • 快速查看整体状态:执行 php artisan horizon:status,能看到当前Horizon的活跃worker数、队列负载等核心信息。
  • 查看详细进程列表:执行 php artisan horizon:list,会列出所有worker进程的完整信息,包括所属Supervisor节点、进程ID、正在处理的任务、运行时长等,直接筛选指定Supervisor节点的进程即可。

内容的提问来源于stack exchange,提问作者kevinc

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.19 16:03:14