任务队列与并发控制
Task Queue & Concurrency Control
优先级任务队列、错开启动并发执行器和批间限流
子问题
1.优先级排序与并发槽位管理
2.错开启动避免 API 突发
3.批间延迟与进度回调
4.取消与恢复机制
5.双重 token 约束(input + output)自适应分批
6.动态并发配置(运行时可调)
7.Web Worker 线程级批次并行
各项目的解法1 solutions
Signals
横向对比
| 维度 | moyin-creator |
|---|---|
| 并发模型 | 三级体系:TaskQueue优先级队列 + runStaggered信号量错开启动 + processBatched自适应批处理 |
| 调度策略 | 优先级插入排序 + stagger间隔错开 + 双重token约束贪心分批 |
| 容错机制 | Promise.allSettled容错收集 + 单批次指数退避重试 + TaskQueue自动重试 |
| 取消恢复 | TaskQueue.cancelAll/resume + AI Worker cancelled标志 + 只取消排队任务不中断运行中任务 |
| 动态配置 | getMaxConcurrency函数式动态并发 + 用户运行时setConcurrency调整 |
| token感知 | processBatched 60K Hard Cap + input/output双重约束 + 模型Registry查询限制 |
最佳实践
1.信号量模式控制最大并发
2.stagger 间隔防止 API 突发限流
3.Promise.allSettled 容错收集结果
4.60K Hard Cap 防止超长上下文 TTFT 过高和 Lost in the middle
5.getMaxConcurrency 函数式注入支持运行时动态调整并发数
6.cancelAll 只取消排队任务不中断运行中任务保证数据一致性