$lastHeartbeatAt
$lastHeartbeatAt : ?float
心跳写入时间戳(节流用):worker 空转高频循环下避免每轮都写 Redis/DB
队列事件订阅器
职责:SystemJob 包装负责业务内记账(处理中/成功/单次失败),本订阅器负责业务外兜底—— ① JobQueued 回填台账 uuid(关联原生队列表,取消/失败对账的锚点) ② JobProcessing/JobProcessed 幂等兜底(sync 驱动同样触发;包装已记账则跳过) ③ JobFailed 最终失败落账(Laravel 仅在重试耗尽后触发,与包装的逐次记账互补) ④ Looping/WorkerStarting/WorkerStopping 驱动 worker 心跳与实例台账(界面守护)
┌────────────────── 分区导航(按此顺序阅读)──────────────────┐ 分区 1 · 订阅声明 subscribe 分区 2 · 台账兜底 onJobQueued / onProcessing / onProcessed / onFailed 分区 3 · worker 守护 onLooping / onWorkerStarting / onWorkerStopping 分区 4 · 内部辅助 resolveLog / commandOf └────────────────────────────────────────────────────────────┘
$lastHeartbeatAt : ?float
心跳写入时间戳(节流用):worker 空转高频循环下避免每轮都写 Redis/DB