Skip to content

适配单核/1GB 部署:下载稳定性、录制与播放优化,新增单账户登录门禁 - #16

Closed
wofanqiang wants to merge 1 commit into
raccommode:mainfrom
wofanqiang:main
Closed

wofanqiang wants to merge 1 commit into
raccommode:mainfrom
wofanqiang:main

Conversation

@wofanqiang

Copy link
Copy Markdown

下载链路:

  • stall 卡死检测(默认600s,编码阶段豁免)、指数退避自动重试、HTTP 暂停真生效、启动回收孤儿临时目录

录制与播放:

  • 默认关闭重编码(recordingPreset undefined 视同 source),避免单核 CPU 黑洞
  • 录制音轨合并(resolveLiveStream audioUrl)、捕获崩溃保留半成品到 .recording-recovery
  • 播放代理:非 playlist 段落磁盘缓存 + 上游 3 次退避重试(60s)

其它:

  • findVisualDuplicate 有界化(ORDER BY updated_at DESC LIMIT 200)
  • directoryBytes 轮询 250ms -> 2s
  • 合入上游 a3e1b6e:直播收藏状态陈旧/不可用修复

登录门禁(方案A):

  • server/auth.ts: scrypt(N=16384) + HMAC 无状态签名 Cookie,无服务端会话存储
  • index.ts: onRequest 全局守卫(白名单 login/me/health/version)、CSRF 自定义头、按 IP 限流
  • 前端: AuthGate + Login 页、api.ts 统一 credentials/CSRF/401 处理、顶栏退出
  • GET /api/settings 剔除 admin_password_hash

部署:

  • package.json dev/start 支持 --env-file-if-exists=.env
  • compose.yaml 透传登录与低内存相关变量,新增可选 caddy TLS 反代(profiles: tls)
  • 新增 deploy/Caddyfile

下载链路:
- stall 卡死检测(默认600s,编码阶段豁免)、指数退避自动重试、HTTP 暂停真生效、启动回收孤儿临时目录

录制与播放:
- 默认关闭重编码(recordingPreset undefined 视同 source),避免单核 CPU 黑洞
- 录制音轨合并(resolveLiveStream audioUrl)、捕获崩溃保留半成品到 .recording-recovery
- 播放代理:非 playlist 段落磁盘缓存 + 上游 3 次退避重试(60s)

其它:
- findVisualDuplicate 有界化(ORDER BY updated_at DESC LIMIT 200)
- directoryBytes 轮询 250ms -> 2s
- 合入上游 a3e1b6e:直播收藏状态陈旧/不可用修复

登录门禁(方案A):
- server/auth.ts: scrypt(N=16384) + HMAC 无状态签名 Cookie,无服务端会话存储
- index.ts: onRequest 全局守卫(白名单 login/me/health/version)、CSRF 自定义头、按 IP 限流
- 前端: AuthGate + Login 页、api.ts 统一 credentials/CSRF/401 处理、顶栏退出
- GET /api/settings 剔除 admin_password_hash

部署:
- package.json dev/start 支持 --env-file-if-exists=.env
- compose.yaml 透传登录与低内存相关变量,新增可选 caddy TLS 反代(profiles: tls)
- 新增 deploy/Caddyfile
@wofanqiang wofanqiang closed this Sep 8, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant