本节是性能配置与调优大全:什么场景该开什么、关什么、调到什么档。
用户级配置
"设置 → 演示" 关键项
☑ 启用硬件加速
- 默认开
- 老 GPU 关
☑ 自动暂停后台标签
- 默认开(节省内存)
- 多窗口操作时可关
☑ 缓存预加载
- 翻页前预加载下一页
- 提升观感、增加内存
☑ 高质量渲染
- 提高字体清晰度
- 增加 GPU 开销
档位:
动画时长:fast / default / slow
视频质量:auto / high / medium / low
缓存大小:100MB / 500MB / 1GB大屏 / 展厅配置
性能预算
详见「45. 21:9 / 32:9 超宽适配」+「47. 外部触发」。
| 分辨率 | 推荐 GPU | 内存 |
|---|---|---|
| 1920×1080 | 集成显卡 | 8GB |
| 3440×1440 | RTX 3060 | 16GB |
| 3840×1080 | RTX 3060 | 16GB |
| 4K (3840×2160) | RTX 3070+ | 16GB |
| 5760×1080 拼接 | RTX 4070+ | 32GB |
| 8K | RTX 4080+ | 32GB |
浏览器选型
| 场景 | 推荐 |
|---|---|
| 普通办公 PC | Chrome 最新 |
| 大屏 / 展厅 | Chromium Kiosk Mode |
| 触屏一体机 | Edge / Chromium |
| 嵌入式(车载) | 定制 Chromium |
| 旧版 IE | ❌ 完全不支持 |
Kiosk 启动脚本
Windows:
"C:\\Program Files\\Google\\Chrome\\Application\\chrome.exe"
--kiosk
--no-first-run
--disable-translate
--disable-gpu-vsync
--start-fullscreen
https://x.bahuangqi.com/embed/abc123Linux:
chromium-browser \\
--kiosk \\
--noerrdialogs \\
--disable-translate \\
--no-first-run \\
--start-fullscreen \\
https://x.bahuangqi.com/embed/abc123网络配置
带宽要求
| 场景 | 带宽 |
|---|---|
| 单屏 1080p 演示 | 5-10 Mbps |
| 4K 大屏 | 20-50 Mbps |
| 多端联动(50 人) | 100 Mbps |
| 直播课堂(1000 人) | 500 Mbps |
防火墙白名单
需要开放的域名:
*.bahuangqi.com # 主服务
cdn.bahuangqi.com # 静态资源
oss.bahuangqi.com # 大文件
ws.bahuangqi.com # WebSocket端口:
- 443 (HTTPS)
- 80 (HTTP,仅重定向)
- 443 (WSS)
国内 / 海外
跨国部署考虑:
- 国内:阿里云国内
- 海外:AWS / GCP / Azure
- 混合:智能 DNS 解析
元素级优化
图片
| 操作 | 效果 |
|---|---|
| WebP 替代 PNG / JPG | 体积 -50% |
| 长边 ≤ 1920px | 不需要更大 |
| 多图懒加载 | 视口外不加载 |
| 移除 EXIF | 体积 -10% |
视频
| 操作 | 效果 |
|---|---|
| H.265 替代 H.264 | 体积 -50% |
preload="metadata" |
不预下载完整视频 |
| 自适应码率 | 弱网降级 |
| 总时长 < 2 分钟 | 不卡演示 |
GGB / HTML
| 操作 | 效果 |
|---|---|
| 单页 ≤ 2 个 | 内存 / GPU 控制 |
| 移除未用变量 | JS 执行更快 |
interactable: false 的元素静态化 |
节省 50% 开销 |
详见「14. GGB 元素」+「15. HTML 元素」。
服务端配置
私有化部署
详见「77. 定制服务流程」。最小配置:
| 服务 | 配置 |
|---|---|
| 应用服务器 | 2 × 8C16G |
| 数据库 | 1 × 16C32G + 500GB SSD |
| Redis | 1 × 4C8G |
| OSS | 1TB+ |
| 网络 | 100Mbps 出口 |
集群(中型规模)
支持 ~500 并发用户:
| 服务 | 配置 |
|---|---|
| 应用服务器 | 4 × 16C32G(负载均衡) |
| 数据库 | 主从 + 只读从(3 节点) |
| Redis 集群 | 6 节点 |
| WebSocket 网关 | 2 节点 |
| OSS / CDN | 国内 / 海外双 CDN |
云原生(大型)
K8s + 微服务:
- 应用服务自动扩缩容
- 数据库主从 + 读写分离
- 缓存多级
- 全球部署
性能监控
客户端
"视图 → 性能监视" 实时显示:
- FPS
- 内存占用
- 元素渲染耗时
- WebSocket 延迟
服务端(管理员)
监控控制台:
- API 响应时间
- 错误率
- 数据库查询耗时
- 缓存命中率
- WebSocket 连接数
- 资源使用
性能基准(基线)
| 操作 | 目标 |
|---|---|
| 首屏加载 | < 2s |
| 翻页过渡 | 60fps |
| 元素动画 | 60fps |
| WebSocket 延迟 | < 100ms |
| 课堂答题响应 | < 500ms |
| AI 响应 | < 5s(普通)/ 30s(复杂) |
| 大屏渲染 | 60fps(推荐 GPU) |
故障排查
白屏
- F12 看 Console 报错
- 重新加载(
⌘+Shift+R) - 检查浏览器版本
- 提交诊断报告
卡顿
- 看 FPS(性能监视)
- 关闭其他标签页
- 降低视频质量
- 减少单页元素数
网络问题
- 测速
- 检查防火墙
- 切换 4G / 网络
- 联系网络管理员
详见「85. 常见问题」。
极端场景
1 万人同时观看直播课堂
需要:
- CDN 边缘节点(多区域)
- WebSocket 网关分片
- 数据库读写分离
详见「77. 定制服务流程」。
24×7 无人值守
- 每天凌晨自动重启浏览器
- 内存监控(> 4GB 自动重启)
- 远程心跳检测
- 自动故障转移
下一章进入"帮助与动态"section。
