
wall-wxkandClaude Opus 4.6
9be9c0b68c
fix(gateway): 转发失败的请求立即释放会话槽,不再占用整个空闲超时窗口
会话数量限制(max_sessions)此前只有空闲超时自动过期,没有任何主动释放
机制:请求在选号阶段注册会话后,即使转发失败(上游错误/客户端断开/换号
耗尽),该 session hash 也会占住槽位直到空闲超时(默认 5 分钟),导致
max_sessions 受限的账号在窗口内拒绝所有新会话。
修复:
- SessionLimitCache 新增 UnregisterSession(Redis ZREM),立即移除会话注册
- GatewayService 新增 ReleaseAccountSession,适用条件与 checkAndRegisterSession 对齐
- Messages 主路径:记录 failover 链上注册过会话槽的账号,请求最终失败时
统一释放;failover continue / profit veto / 兜底分组切换时按次即时释放;
成功及"上游已计量部分结果"(#5148)保持既有空闲超时语义
- CountTokens:转发失败时同样释放选号时注册的会话槽
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-09-02 18:45:20 +08:00
..
2026-09-02 10:01:42 +08:00
2026-09-02 10:01:42 +08:00
2026-08-09 22:42:51 +08:00
2026-08-09 22:42:51 +08:00
2026-08-06 20:34:37 +08:00
2026-08-04 20:57:15 +08:00
2026-08-04 20:57:15 +08:00
2026-08-04 15:09:29 +08:00
2026-07-16 13:47:50 +08:00
2026-08-04 20:57:15 +08:00
2026-08-04 20:57:15 +08:00
2026-08-04 20:57:15 +08:00
2026-08-09 15:53:40 +08:00
2026-08-07 03:09:57 +08:00
2026-08-24 12:02:53 +08:00
2026-07-28 17:21:32 +08:00
2026-08-04 20:57:15 +08:00
2026-07-29 12:32:44 +08:00
2026-09-02 05:47:01 +08:00
2026-07-24 01:22:34 +08:00
2026-08-18 04:14:15 +00:00
2026-08-30 09:28:40 +08:00
2026-08-30 09:28:40 +08:00
2026-09-01 10:15:45 +08:00
2026-09-01 10:15:45 +08:00
2026-07-23 09:20:52 +08:00
2026-08-26 09:42:28 +08:00
2026-09-01 01:26:55 +08:00
2026-08-01 22:39:33 +08:00
2026-08-20 18:16:38 -07:00
2026-08-20 18:16:38 -07:00
2026-07-23 09:20:52 +08:00
2026-08-25 15:10:52 +08:00
2026-07-26 20:23:50 +09:00
2026-07-27 15:20:03 +00:00
2026-08-25 15:10:52 +08:00
2026-07-27 15:20:03 +00:00
2026-09-02 18:45:20 +08:00
2026-08-19 23:13:40 -07:00
2026-07-23 09:20:52 +08:00
2026-08-31 20:26:29 +08:00
2026-08-13 07:49:19 +08:00
2026-09-01 01:26:55 +08:00
2026-08-13 08:38:10 +08:00
2026-08-20 09:50:23 -07:00
2026-08-07 16:29:57 +08:00
2026-08-20 18:16:38 -07:00
2026-08-24 09:03:37 +08:00
2026-07-20 15:20:51 +08:00
2026-07-15 19:57:37 -07:00
2026-07-19 00:56:21 -07:00
2026-08-28 02:40:17 +08:00
2026-08-28 02:40:17 +08:00
2026-09-01 15:18:30 +08:00
2026-09-01 15:18:30 +08:00
2026-08-19 23:13:40 -07:00
2026-09-01 11:36:26 +08:00
2026-09-01 10:15:45 +08:00
2026-09-01 08:46:42 +08:00
2026-08-22 14:43:40 +09:00
2026-08-31 12:57:06 +08:00
2026-08-19 23:13:40 -07:00
2026-08-21 18:01:16 +08:00
2026-08-14 18:18:53 +08:00
2026-08-14 18:18:53 +08:00
2026-08-20 22:01:20 -07:00
2026-07-23 00:06:04 +08:00
2026-08-20 21:06:48 -07:00
2026-08-19 23:13:40 -07:00
2026-08-29 08:31:15 +08:00
2026-09-02 09:07:53 +08:00
2026-07-26 13:33:56 +08:00
2026-07-26 13:33:56 +08:00
2026-08-19 18:51:21 +08:00
2026-07-17 15:29:14 +08:00
2026-07-23 23:04:00 +08:00
2026-08-20 18:16:38 -07:00
2026-08-19 04:40:32 +00:00
2026-08-19 04:40:32 +00:00
2026-08-14 16:23:52 +08:00
2026-08-01 22:39:33 +08:00
2026-07-19 18:49:08 +08:00
2026-08-20 22:01:20 -07:00
2026-08-24 11:52:48 +08:00
2026-08-28 13:17:43 +08:00
2026-08-17 19:45:07 +08:00
2026-08-27 21:50:53 +08:00
2026-08-13 08:37:57 +08:00
2026-08-13 08:37:57 +08:00
2026-08-20 22:01:20 -07:00
2026-07-18 00:11:18 +08:00
2026-09-01 10:15:45 +08:00
2026-09-01 10:15:45 +08:00
2026-08-19 23:13:40 -07:00
2026-07-23 09:19:25 +08:00
2026-08-04 15:09:29 +08:00
2026-08-04 20:57:15 +08:00
2026-07-22 19:18:04 +08:00
2026-08-19 09:03:37 -07:00
2026-08-19 09:03:37 -07:00
2026-07-17 00:39:39 +08:00
2026-07-17 00:39:39 +08:00
2026-08-11 11:56:46 +08:00
2026-08-11 11:56:46 +08:00
2026-07-17 00:39:39 +08:00
2026-07-17 00:39:39 +08:00
2026-08-06 20:34:37 +08:00
2026-08-24 09:03:37 +08:00
2026-08-14 11:05:29 +08:00
2026-08-14 11:05:29 +08:00
2026-07-16 16:49:08 +08:00
2026-08-28 23:32:11 +08:00
2026-08-28 23:32:11 +08:00
2026-08-07 17:58:23 +08:00
2026-08-01 11:29:58 +08:00
2026-07-28 17:21:32 +08:00
2026-08-19 23:13:40 -07:00
2026-08-24 13:28:33 +08:00