DCTS/crates/mq
2026-07-28 10:31:57 +08:00
..
src feat(all): 重炼 crates/common 核心组件、上线 Web 运维看板与 Docker 容器化部署 2026-07-28 10:31:57 +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 逻辑校验。