用途:为游戏后端提供基于 BullMQ + Redis 的任务队列模式,覆盖匹配系统、异步游戏事件、延迟任务与定时任务,避免阻塞游戏主循环。
主要能力:按域命名队列(匹配、事件、奖励、通知、分析);优先级队列(匹配优先于分析);延迟任务(每日奖励、赛季事件);cron 重复任务(排行榜快照、会话清理);指数退避重试与死信队列;按玩家限流;幂等任务处理器;队列事件监听与监控集成。
使用方式:先安装依赖 bun add bullmq ioredis,复用 redis-game-patterns 的连接或新建专用连接;参考 templates/job-types.ts 定义任务类型,boilerplate/queues.ts 定义队列,boilerplate/workers.ts 实现 worker,boilerplate/scheduler.ts 配置定时与延迟任务。示例:matchmakingQueue.add('find-match', {...}, { priority: 1 });rewardQueue.add('distribute-reward', {...}, { delay: 60_000 })。
适用场景:匹配、奖励发放、比赛结束事件处理、分析统计等可延迟的游戏逻辑。
限制与注意:任务数据应小且可序列化,只存 ID 由 worker 查库;必须处理失败并配置 maxRetries 与死信;不要用单一巨型队列;不要跳过幂等检查;需配置停滞检测与告警。前置依赖 redis-game-patterns,相关技能包括 postgres-game-schema、game-backend-architecture、monitoring-game-ops。