Nexus Sprint 规划 — 2026-05-22 更新
本文档已更新反映实际代码状态,移除已完成项
已完成的架构升级(本轮)
| 升级 |
之前 |
之后 |
影响 |
| SSH 库 |
paramiko (同步,阻塞事件循环) |
asyncssh (异步,引用计数连接池) |
消除 47s health 响应延迟 |
| 认证 |
PHP Session + API Key |
JWT + TOTP |
统一认证体系 |
| 前端 |
PHP AdminLTE |
Tailwind CSS v4 + Alpine.js |
纯静态,零构建 |
| 定时调度 |
APScheduler |
自定义 schedule_runner + retry_runner |
原生异步,更轻量 |
| WebSocket |
无 |
两层架构 (内存 + Redis Pub/Sub) |
实时告警推送 |
| 数据库 Session |
泄漏 (4 个 service factory 不关) |
DbSessionMiddleware 自动管理 |
消除连接池耗尽 |
当前连接池配置
后台任务
| 任务 |
间隔 |
文件 |
说明 |
| heartbeat_flush |
10min |
background/heartbeat_flush.py |
Redis → MySQL 批量刷新 |
| self_monitor |
30s |
background/self_monitor.py |
Redis/MySQL 检查 + 恢复通知 |
| schedule_runner |
60s |
background/schedule_runner.py |
Cron 定时推送 |
| retry_runner |
5min |
background/retry_runner.py |
指数退避重试 |
| asyncssh_cleanup |
60s |
ssh/asyncssh_pool.py |
空闲连接清理 |
待完成项
P1 — 本周
| # |
项 |
工时 |
风险 |
| 1 |
WebSSH xterm.js 前端页面 |
2-3天 |
中 |
| 2 |
推送前预览 (rsync dry-run --stats) |
0.5天 |
低 |
P2 — 迭代
| # |
项 |
工时 |
| 3 |
install.php → install.html 迁移 |
1天 |
| 4 |
config.php → 纯 API(移除 PHP-FPM 依赖) |
2天 |
| 5 |
paramiko pool.py + requirements.txt 清理 |
0.5天 |
| 6 |
命令日志查询页面 |
0.5天 |
7 |
文件编辑器集成 (Monaco) |
已否决 |
已否决(永久)
| 项 |
原因 |
| RBAC 权限体系 |
保持"鉴权即信任" |
| 移动端适配 |
运维不会用手机管理 2000 台服务器 |
| MQTT 协议 |
HTTP + Redis 已足够 |
| 会话录像 asciicast |
不需要 |
| APScheduler |
自定义 asyncio loop 更轻量 |
| 文件编辑器(Monaco/ACE) |
运维场景无需嵌入编辑器;远程文件通过 WebSSH / SFTP 处理(2026-05-23 明确否决) |