DCTS/crates/server
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
tests feat(server,dashboard): 引入多工作流数据隔离、安全中间件与前端 ESM 模块化重构 2026-07-28 21:54:02 +08:00
build.rs feat(all): 重炼 crates/common 核心组件、上线 Web 运维看板与 Docker 容器化部署 2026-07-28 10:31:57 +08:00
Cargo.toml feat(server,dashboard): 引入多工作流数据隔离、安全中间件与前端 ESM 模块化重构 2026-07-28 21:54:02 +08:00
README.md feat(all): 重炼 crates/common 核心组件、上线 Web 运维看板与 Docker 容器化部署 2026-07-28 10:31:57 +08:00

server

DCTS 中央调度与 REST API 服务端程序。


📦 模块概览

server 是基于 Axum 框架构建的高性能中央 Master 控制服务。

  • main.rsHTTP Router 初始化、命令行参数解析 (clap) 与后台掉线检测 / 任务超时重入循环。
  • db.rs:基于 SQLite + r2d2 的持久化数据层,管理网格点、节点及任务历史。
  • scheduler.rs:网格点自动展开生成器与状态更新管道。
  • api/
    • node.rs:节点注册与心跳接口。
    • task.rs:任务 Claim 抢占与 Report 结果汇报。
    • seed.rs.7 大气结构二进制种子下载。
    • data.rs:二进制运行依赖与谱线库分发。
    • workflow.rs:网格工作流 CRUD 与启动/停止控制。
    • status.rs:系统运行全貌状态上报。

🚀 Setup & Testing

编译与启动

cargo build -p server --release
./target/release/server --workflow config.yaml --port 8080

自动化测试

cargo test -p server

详细 API 规范请参阅 API Reference