灵字辈资源分配监控面板 - 使用说明
版本:1.0.0 创建时间:2026-04-07 00:00:00 UTC 状态:✅ 已完成
📋 功能概述
核心功能
- 实时资源监控
- CPU 使用率监控
- 内存使用监控
- 带宽使用监控
-
整体资源状态展示
-
手动流量分配
- 为每个项目分配 CPU 配额(百分比)
- 为每个项目分配内存配额(GB)
- 为每个项目分配带宽配额(Mbps)
-
实时更新分配状态
-
请求频率控制
- 为每个项目设置请求频率(次/分钟)
- 动态调整请求限制
-
实时显示请求速率
-
项目管理
- 启用/禁用项目
- 项目优先级设置
- 项目状态监控
- 配置持久化保存
🚀 快速开始
步骤 1:安装依赖
# 自动安装所有依赖
cd /home/ai/LingClaude/scripts
chmod +x start_resource_dashboard.sh
./start_resource_dashboard.sh
或者手动安装:
步骤 2:启动仪表板
# 方法 1:使用启动脚本(推荐)
cd /home/ai/LingClaude/scripts
./start_resource_dashboard.sh
# 方法 2:直接运行 Python 脚本
cd /home/ai/LingClaude/scripts
python3 resource_monitor_dashboard.py
步骤 3:访问仪表板
打开浏览器访问:http://localhost:8090
🎯 功能使用指南
1. 整体资源状态监控
仪表板顶部显示整体资源状态:
- CPU 使用率:系统整体 CPU 使用百分比
- 内存使用:系统整体内存使用量(GB)
- 带宽使用:系统整体带宽使用量(Mbps)
这些数据每 5 秒自动更新一次。
2. 项目卡片
每个灵字辈项目都有一个独立的项目卡片,包含:
项目信息
- 项目名称:中文名称(如"灵知")
- 优先级标签:
- 🔴 HIGH(高优先级)
- 🟠 MEDIUM(中优先级)
- 🟢 LOW(低优先级)
- 启用开关:切换项目启用/禁用状态
资源分配控制
每个项目卡片包含以下资源分配滑块:
CPU 配额
- 范围:0% - 50%
- 单位:系统 CPU 百分比
- 实时更新:拖动滑块实时更新
- 视觉反馈:进度条显示当前分配比例
使用场景: - 计算密集型项目(如灵研)可以分配更高的 CPU 配额 - 后台服务(如灵信)可以分配较低的 CPU 配额
内存配额
- 范围:0 GB - 16 GB
- 单位:GB
- 实时更新:拖动滑块实时更新
- 视觉反馈:进度条显示当前分配比例
使用场景: - 内存密集型项目(如灵知)可以分配更多的内存 - 轻量级服务(如灵信)可以分配较少的内存
带宽配额
- 范围:0 Mbps - 200 Mbps
- 单位:Mbps
- 实时更新:拖动滑块实时更新
- 视觉反馈:进度条显示当前分配比例
使用场景: - 数据传输密集型项目(如灵知)可以分配更高的带宽 - 本地计算项目(如灵研)可以分配较低的带宽
请求频率
- 范围:0 次/分钟 - 120 次/分钟
- 单位:次/分钟
- 实时更新:拖动滑块实时更新
- 视觉反馈:进度条显示当前分配比例
使用场景: - 高频请求项目(如灵通)可以设置更高的请求频率 - 低频服务(如灵信)可以设置较低的请求频率
3. 启用/禁用项目
每个项目卡片右上角有一个切换开关:
- ✅ 启用状态:项目可以正常使用分配的资源
- ❌ 禁用状态:项目暂停使用资源(不占用配额)
使用场景: - 临时禁用不活跃的项目,释放资源给其他项目 - 启用新项目开始使用资源 - 资源紧张时禁用低优先级项目
4. 配置持久化
所有资源分配更改会自动保存到配置文件:
配置文件位置:~/.lingclaude/resource_monitor_config.json
配置文件包含: - 所有项目的资源配置 - 项目启用/禁用状态 - 配置更新时间戳
自动保存:每次调整滑块或切换项目状态时自动保存
📊 默认配置
高优先级项目
| 项目 | CPU | 内存 | 带宽 | 请求频率 |
|---|---|---|---|---|
| 灵知 | 20% | 7 GB | 20 Mbps | 60 次/分钟 |
| 灵研 | 30% | 11 GB | 30 Mbps | 120 次/分钟 |
| 灵信 | 5% | 512 MB | 5 Mbps | 10 次/分钟 |
| 灵犀 | 10% | 1 GB | 10 Mbps | 10 次/分钟 |
| 智桥 | 5% | 512 MB | 5 Mbps | 10 次/分钟 |
中优先级项目
| 项目 | CPU | 内存 | 带宽 | 请求频率 |
|---|---|---|---|---|
| 灵通 | 15% | 4 GB | 15 Mbps | 30 次/分钟 |
| 灵依 | 10% | 1 GB | 10 Mbps | 15 次/分钟 |
| 灵极优 | 10% | 2 GB | 10 Mbps | 20 次/分钟 |
低优先级项目
| 项目 | CPU | 内存 | 带宽 | 请求频率 |
|---|---|---|---|---|
| 灵克 | 5% | 512 MB | 5 Mbps | 5 次/分钟 |
| 灵扬 | 5% | 512 MB | 5 Mbps | 5 次/分钟 |
总配额
- CPU:~100%
- 内存:~28.5 GB
- 带宽:~120 Mbps
- 请求频率:~290 次/分钟
🎨 界面设计
视觉特性
- 渐变背景
- 蓝紫色渐变背景
-
视觉舒适现代
-
卡片式布局
- 每个项目独立卡片
- 清晰的层次结构
-
悬停动画效果
-
进度条反馈
- 实时显示资源分配比例
- 渐变填充效果
-
直观的视觉反馈
-
优先级标签
- 颜色编码优先级
- 清晰的视觉区分
-
快速识别重要项目
-
响应式设计
- 适配不同屏幕尺寸
- 移动设备友好
- 自适应网格布局
🔧 高级使用
1. 自定义项目配置
直接编辑配置文件:
# 打开配置文件
nano ~/.lingclaude/resource_monitor_config.json
# 编辑项目配置
{
"projects": {
"lingzhi": {
"name": "lingzhi",
"display_name": "灵知",
"priority": "high",
"cpu_quota": 20,
"memory_quota_mb": 7168,
"bandwidth_quota_mbps": 20,
"request_rate": 60,
"enabled": true
}
}
}
2. 资源分配策略
策略 A:性能优先
- 高优先级项目:50-60% CPU,50-60% 内存
- 中优先级项目:30-40% CPU,30-40% 内存
- 低优先级项目:10-20% CPU,10-20% 内存
策略 B:公平分配
- 所有项目:平均分配 CPU、内存、带宽
- 高优先级项目:10% 额外资源
- 中/低优先级项目:标准资源
策略 C:资源紧张
- 高优先级项目:70-80% CPU,70-80% 内存
- 中优先级项目:20-30% CPU,20-30% 内存
- 低优先级项目:0-10% CPU,0-10% 内存(部分禁用)
3. 动态资源调整
根据实时使用情况调整:
# 监控整体资源状态
# 如果 CPU 使用率 > 80%,考虑降低某些项目的 CPU 配额
# 如果内存使用率 > 90%,考虑降低某些项目的内存配额
# 如果带宽使用率 > 90%,考虑降低某些项目的带宽配额
📈 监控和优化
实时监控指标
- 整体资源利用率
- 监控 CPU、内存、带宽的总体使用率
-
目标:保持在 70-80% 以内
-
项目资源使用
- 观察各项目的实际资源使用情况
-
对比分配配额和实际使用
-
请求频率
- 监控各项目的请求频率
- 确保不超过设定的频率限制
优化建议
- 定期审查配置
- 每周审查一次资源分配
-
根据实际使用情况调整
-
启用/禁用项目
- 临时禁用不活跃项目
-
释放资源给活跃项目
-
动态调整配额
- 根据项目优先级动态调整
- 资源紧张时降低低优先级项目配额
🛠️ 技术架构
技术栈
- 后端框架:FastAPI
- Web 服务器:Uvicorn
- 模板引擎:Jinja2
- 系统监控:psutil
- 前端:HTML + CSS + JavaScript(纯前端)
API 端点
GET /- 主仪表板页面GET /api/projects- 获取所有项目配置GET /api/projects/{name}- 获取特定项目配置PUT /api/projects/{name}- 更新项目配置GET /api/status- 获取资源分配状态GET /api/system- 获取系统资源使用
配置存储
- 格式:JSON
- 位置:
~/.lingclaude/resource_monitor_config.json - 自动保存:每次配置更改时
🐛 故障排除
常见问题
1. 仪表板无法访问
问题:打开 http://localhost:8090 无法访问
解决方案:
# 检查仪表板是否正在运行
ps aux | grep resource_monitor_dashboard
# 如果没有运行,重新启动
cd /home/ai/LingClaude/scripts
./start_resource_dashboard.sh
2. 资源使用不准确
问题:显示的 CPU/内存/带宽使用不准确
解决方案: - 确保以当前用户身份运行(不是 root) - 重新启动仪表板 - 检查 psutil 是否正常工作
3. 配置未保存
问题:调整滑块后配置未保存
解决方案:
# 检查配置文件权限
ls -l ~/.lingclaude/resource_monitor_config.json
# 确保有写入权限
chmod 644 ~/.lingclaude/resource_monitor_config.json
4. 端口冲突
问题:8090 端口已被占用
解决方案:
📋 总结
核心功能
- ✅ 实时资源监控(CPU、内存、带宽)
- ✅ 手动流量分配(每个项目独立控制)
- ✅ 请求频率控制(动态调整)
- ✅ 项目管理(启用/禁用、优先级)
- ✅ 配置持久化(自动保存)
使用场景
- 开发测试环境
- 生产环境资源管理
- 灵字辈项目协调
- 性能优化和调优
下一步
- 部署到生产环境
- 集成到监控系统
- 添加告警功能
- 实现自动优化
文档完成:2026-04-07 00:00:00 UTC 作者:灵克(LINGCLAUDE)
🎯 快速开始命令
# 1. 进入脚本目录
cd /home/ai/LingClaude/scripts
# 2. 启动仪表板
./start_resource_dashboard.sh
# 3. 打开浏览器访问
# http://localhost:8090
就这么简单! 🚀