
shangfangjianandnew-provider/LongCat-2.0 <
f52ec8b963
feat: bzzoiro 多 API Key 轮换,遇限流自动切换
新增 KeyRing 轮换环(src/data/key_ring.py):
- 支持逗号/分号/换行分隔多个 key,单 key 场景零开销
- 遇到 429 自动标记当前 key 冷却(默认 60s)并立即切换到下一个 key
- 全部 key 冷却时等待最早恢复的 key,避免无谓重试
- 热更新 key 列表(增删 key 无需重启)
- 进程级单例,按 base URL 隔离
后端集成:
- bzzoiro._fetch_json_async 接入 KeyRing,429 立即轮换(不等待)
- 新增 /admin/keyring/status 端点展示 key 环状态
- 新增 /admin/keyring/cooldown/reset 紧急重置冷却
- BZZOIRO_KEY 配置描述提示多 key 支持
- mask_value 多 key 显示数量(如 "3 个 key(末段 …XXXX)")
- 清理已移除 injuries 的 API_FOOTBALL_KEY 配置项
前端:
- 数据源页新增 Key Ring 状态面板(每个 key 可用/冷却状态 + 重置按钮)
- 配置项脱敏展示支持多 key 计数
测试: 新增 24 个 KeyRing 单元测试 + 2 个 bzzoiro 轮换集成测试,全部通过。
Co-Authored-By: new-provider/LongCat-2.0 <<EMAIL>>
2026-09-20 19:40:20 +08:00
..
2026-09-19 22:51:35 +08:00
2026-09-20 19:13:07 +08:00
2026-09-20 19:13:07 +08:00
2026-09-19 22:51:35 +08:00
2026-09-20 19:13:07 +08:00
2026-09-19 22:51:35 +08:00
2026-09-19 22:51:35 +08:00
2026-09-19 09:40:24 +00:00
2026-09-15 00:14:24 +08:00
2026-09-19 09:40:24 +00:00
2026-09-19 06:43:55 +00:00
2026-09-19 22:51:35 +08:00
2026-09-19 08:02:57 +00:00
2026-09-20 19:40:20 +08:00
2026-09-19 22:51:35 +08:00
2026-09-19 06:43:55 +00:00
2026-09-20 19:13:07 +08:00
2026-09-19 06:43:55 +00:00
2026-09-19 06:43:55 +00:00
2026-09-19 06:43:55 +00:00
2026-09-19 06:43:55 +00:00
2026-09-15 16:55:54 +08:00
2026-09-19 08:02:57 +00:00
2026-09-19 22:51:35 +08:00
2026-09-19 08:02:57 +00:00
2026-09-20 08:45:35 +08:00