RRRosmontis
|
55f8eb91c9
|
docs: 补充内存行为与可选的分配器调优
- README: 修正内存观测说明(字段已扩展为 cgroup 构成 + RSS 拆分),补充实测结论:
MALLOC_ARENA_MAX=2 把 mmap arena 从 33 个降到 1 个,但增长转入 brk 堆 [heap],
会话中 RSS 仍可达约 2.4 GB;会话期间服务 swap 占用为 0,回收机制仍是主要依靠
- README: 把 MALLOC_MMAP_THRESHOLD_ / MALLOC_TRIM_THRESHOLD_ 记为可选且默认不启用,
说明原因是该负载下服务 CPU 占用高(35 分钟会话约 14 分钟 CPU),强制 mmap 会引入
syscall/缺页/TLB 开销,可能拖长任务时长;附基线对比与回滚步骤
|
2026-09-21 08:16:47 +08:00 |
|
RRRosmontis
|
636ecbd974
|
feat: 增加内存观测日志
- bin/maa-online-memlog: 每分钟采集一次服务 cgroup 匿名内存、swap 占用、进程 RSS、
以及大于 32 MB 的匿名映射数量(glibc arena 膨胀指纹),追加写入 logs/memlog.csv,
超过 5 MB 自动滚动并保留一代;同时输出一行到 journald
- systemd/maa-online-memlog.service, maa-online-memlog.timer: 每分钟触发采集,
Nice=10 避免影响流媒体负载
- bin/maa-online-install-systemd: 安装并启用观测定时器,安装提示补充内存日志路径
- README.md, user_config/README.md: 补充内存观测说明、字段表与查看命令
- .gitignore: 忽略运行期产生的 logs/
|
2026-09-20 13:07:19 +08:00 |
|
RRRosmontis
|
7806524279
|
feat: 增加每日内存回收与 malloc arena 限制
流媒体会话会在 glibc malloc arena 中留下大量不归还操作系统的冷匿名内存,实测单个
服务可累积到 2.5 GB 并占满整个 swap 文件(33 个 64/128 MB 匿名段,空闲时不增长,
随会话单调抬升)。本次从根因与兜底两侧处理:
- systemd/maa-online-server.service: 设置 MALLOC_ARENA_MAX=2,把线程 arena 数量
从 8xCPU 压到 2,抑制 arena 膨胀
- systemd/maa-daily.service: 单元结束时经 ExecStopPost 重启 API 服务,回收当次会话残留
- systemd/maa-online-recycle.service, maa-online-recycle.timer: 新增每日 03:59(游戏
每日刷新前)独立回收定时器,错开更新与日常任务窗口,Persistent=false 避免补跑撞车
- bin/maa-online-can-recycle: 回收守卫,检测日常任务(systemd 单元或手工运行)是否
进行中,是则跳过回收,避免重启打断任务
- bin/maa-online-install-systemd: 安装并启用新增的回收单元
- README.md, user_config/README.md: 补充内存回收机制与定时器说明
|
2026-09-19 23:58:54 +08:00 |
|
RRRosmontis
|
0264053b08
|
feat: 增加 systemd 定时执行与断点续跑
- backend/server.py: 信令 WebSocket 被远端关闭或视频流停滞超过阈值时自动拆除会话,
由 finally 释放网易云端实例,避免会话空挂、后续 /start 一直拿到 503
- bin/maa-online-daily-run: 新增日常任务包装脚本,等待 API 就绪、启动云游戏、
停滞看门狗(连续 ScreencapFailed 或 Disconnected)、失败即释放云会话并最多重试 3 次
- bin/maa-resume-tasks.py: 新增断点续跑规划器,重试时只运行未出现 Completed 的任务,
全部完成则直接判定成功,不再开启新会话;StartUp 永不跳过
- systemd/: 新增 server/daily/update 服务与定时器模板,每天 04:00 起随机 0-2 小时执行
- bin/maa-online-install-systemd: 渲染 __ROOT__ 并安装、启用上述单元
- README.md, user_config/README.md: 补充自动定时执行、断点续跑与已知限制说明
- .gitignore: 忽略生成的 config/tasks/daily-resume.toml
|
2026-09-19 16:45:48 +08:00 |
|
RoyirinRosmontis
|
73250c91b6
|
更新 README.md
|
2026-09-16 12:08:27 +08:00 |
|
RRRosmontis
|
de064272ec
|
feat: publish sanitized Linux cloud-game MAA adapter
|
2026-09-16 11:11:35 +08:00 |
|