lyizai
d6b1339867
fix: 修正服务器反复传送刷屏日志、识别外站账号绑定流程、重连指数退避
部署到 Debian 服务器时暴露的三个真实缺陷:
1. 「被服务器传送」日志洪水
账号未完成服务器验证时服务端每 tick 强推一次位置,实测 3 分钟刷出 748 行日志,
几十分钟就会冲光 2000 条的日志环形缓冲并把 WebSocket 打满。
现改为首次立即记录、其余按 30 秒窗口聚合成一条,断开连接时刷出未汇总计数。
2. 外站账号绑定流程无法识别
原先只认 /login 与 /register,遇到简幻通这类要求 /auth <UID> <验证码> 或扫码绑定的
服务器时,表现只是「连上→被传送→120 秒后被踢→重连」的静默死循环。
现新增 NEED_AUTH_PATTERN 识别并输出可操作的中文告警(每连接一次),
新增 server.authCommand 模板供有固定验证码的服务器自动过验证。
3. 重连无退避
连续被踢时每 10 秒硬撞服务器。现按指数退避拉长(server.reconnectMaxDelayMs,
默认上限 120 秒),成功进入世界后清零;抽出 computeReconnectDelay 便于测试。
顺带补充 README 的「部署到服务器」章节(Node ≥ 22 要求、私有运行时、pm2、日志分文件、排障表)。
测试从 242 增至 252,全部通过。
2026-09-27 22:02:24 +08:00
..
2026-09-27 17:17:41 +08:00
2026-09-27 17:17:41 +08:00
2026-09-27 17:17:41 +08:00
2026-09-27 22:02:24 +08:00
2026-09-27 21:22:57 +08:00
2026-09-27 17:17:41 +08:00
2026-09-27 17:17:41 +08:00
2026-09-27 17:17:41 +08:00