2.2 KiB
2.2 KiB
代码审查任务:TCP服务重构
目标
审查TCP服务重构后的代码质量,确保符合架构设计。
审查范围
API服务
software/api-server/src/ 目录下所有文件:
main.rs— 启动入口config.rs— 配置管理routes/— 路由模块workers/— 后台协程middleware/— 中间件
设备服务
software/device-server/src/ 目录下所有文件:
main.rs— 启动入口config.rs— 配置管理tcp/— TCP服务模块redis.rs— Redis连接
审查清单
1. 架构符合性
- API服务和设备服务职责分离清晰
- 设备服务不处理业务逻辑(不存DB、不验证签名)
- 服务间通信用Redis LIST,不用HTTP直接调用
- 节点注册/心跳/注销功能完整
2. 异步处理
- 所有指令异步处理,msg_id匹配响应
- 后台协程处理Redis队列(report_worker/reply_worker)
- 无阻塞操作(tokio::spawn合理使用)
- 超时处理正确(60秒)
3. Redis使用
- 连接注册:
device:{imei}→{node_id, ip, port},TTL 180秒 - 消息队列:
device:reports/device:commands/device:replies - BRPOP阻塞弹出,不浪费CPU
- 连接池管理正确
4. TCP服务
- LF分隔JSON消息
- 连接池用内存HashMap(快速)
- 设备登录验证流程正确
- 断连清理逻辑
5. 代码规范
cargo check零报错cargo clippy零警告- 单函数≤80行
- 命名语义化,完整注释
- 错误处理完善,无裸panic
6. 配置文件
- 使用config.toml(不用.env)
- 配置项完整(server/database/redis/jwt等)
- 敏感信息不硬编码
输出格式
# TCP服务重构审查报告
## 总体评价
[评分1-10,简要评价]
## 架构符合性
[是否符合设计,问题列表]
## 代码质量
[编译/规范/错误处理]
## 严重问题
[必须修复的问题]
## 警告
[建议修复的问题]
## 优点
[值得肯定的设计]
质量约束
- 审查必须覆盖所有清单项目
- 每个问题必须给出具体位置和修复建议
- 审查报告用中文撰写
- 必须实际读取代码文件