DCTS/crates/mq
Asfmq b91f1e4fa5 feat(server,dashboard): 引入多工作流数据隔离、安全中间件与前端 ESM 模块化重构
- server: 实现按 workflow_name 的多工作流数据隔离与旧数据库平滑迁移机制
- server: 新增 API Key 认证(auth)、限流中间件(rate_limit)与运维备份接口(admin)
- server: 统一 AppError 错误处理体系,重构调度器 scheduler 支持工作流级重置与抢占
- node: 节点 ID 缺失时自动生成随机 UUID,原生支持 `docker compose --scale node=N` 动态扩容
- dashboard: 前端模块化重构(state/api/components),升级 CSS 变量设计系统与 Toast 通知
- docker/docs: 更新 /healthz 健康检查、部署脚本 IP 配置及数据库设计文档
2026-07-28 21:54:02 +08:00
..
src feat(server,dashboard): 引入多工作流数据隔离、安全中间件与前端 ESM 模块化重构 2026-07-28 21:54:02 +08:00
Cargo.toml feat(all): 重炼 crates/common 核心组件、上线 Web 运维看板与 Docker 容器化部署 2026-07-28 10:31:57 +08:00
README.md feat(all): 重炼 crates/common 核心组件、上线 Web 运维看板与 Docker 容器化部署 2026-07-28 10:31:57 +08:00

mq

基于 SQLite 构建的高可靠并发分布式任务队列引擎。


📦 模块概览

mq 为 DCTS 提供轻量级且具备强一致性保证的任务队列服务。

  • sqlite_queue.rsSqliteTaskQueue 结构体,实现基于 SQLite 事务的任务 Push、Claim、Report、Stale Requeue 以及清理重试。

特性亮点

  1. 原子 Claim 事务:保证并发 Claim 时单任务仅被成功分配给一个 Worker。
  2. 超时自动重派 (Requeue):在设定秒数内未汇报结果的任务会被自动放回队列重新为 pending
  3. WAL 高并发模式:支持多连接并发读写而不阻塞写事务。

🛠️ Usage & Setup

单元测试

cargo test -p mq

测试包含并发 Claim 竞态检验与超时自动 Requeue 逻辑校验。