Queue Task

📦 持久队列,断点续跑无忧

为可恢复、幂等的批量任务提供持久化队列管理,支持断点续跑与并发控制,适用于长时任务编排。

收藏
7.2k
安装
1.5k
版本
0.1.0
CLS 安全扫描中
预计需要 3 分钟...

使用说明

核心用法

queue-task 是一个面向长时运行批量任务的持久化队列辅助工具,专为 task-father 任务文件夹架构设计。其核心工作流包括:

1. 初始化队列:通过 python3 scripts/queue_task.py init <slug> 创建状态文件(queue.jsonlprogress.jsondone.jsonlfailed.jsonllock.json
2. 状态监控status 命令实时查看队列进度与锁状态

3. 任务消费:按 BATCH_SIZE 分批处理,支持幂等性键与断点续跑

4. 并发控制lock.json 防止多实例冲突,clear-stale-lock 处理过期锁

5. 调度集成:通过 openclaw cron 实现定时拉起,配合 CRON_EXPR/CRON_TZ 灵活配置

显著优点

  • 持久化可靠:JSONL 追加日志保证任务不丢失,支持崩溃恢复
  • 幂等设计:业务层定义幂等键,重复执行无副作用
  • 轻量依赖:仅依赖 Python3 与 openclaw CLI,无外部数据库
  • 可移植配置config.env 支持多环境切换,示例文件降低配置门槛

潜在局限

  • 单节点锁lock.json 为文件级锁,无法跨机器协调
  • 无内置重试机制:失败任务需外部逻辑处理 failed.jsonl
  • 依赖 openclaw 生态:若未部署 openclaw,调度功能受限
  • 人工运维:锁过期清理、进度监控需主动介入

适合人群

  • 需要离线/断点续跑批量任务的开发者
  • 使用 task-father 管理多任务的个人或小团队
  • 偏好文件型状态而非数据库的简单场景

常规风险

  • 锁残留:进程崩溃可能导致 lock.json 未释放,需定期 clear-stale-lock
  • 磁盘 I/O:高频写入 JSONL 在大规模任务下可能成为瓶颈
  • 配置泄漏config.env 含敏感路径时需权限管控

Queue Task 内容

scripts文件夹
手动下载zip · 4.8 kB
queue_task.pytext/plain
请选择文件