fawney19
f92b0943b5
feat(rate-limit): 实现分层 RPM 限速,支持系统默认/用户/独立Key三级配置
- 新增用户级 rate_limit 字段,支持系统默认/用户自定义/不限制三种模式
- 独立 Key 的 rate_limit 语义调整:null=跟随系统默认,0=不限制,>0=自定义
- 实现 UserRpmLimiter 基于 Redis sliding window 的 RPM 限速引擎
- Pipeline 请求流程集成用户级 RPM 检查
- 管理后台和用户面板新增 RPM 限速配置与实时状态查看
- 系统设置新增全局默认 RPM 配置项
- 迁移脚本回填现有 API Key 的 rate_limit 默认值
- 新增用户/Key RPM 状态监控 API 和前端展示
Closes #231
Co-authored-by: LewisPen <LewisPen@nyadoo.com>
2026-03-15 14:22:59 +08:00
..
2026-02-16 11:00:48 +08:00
2026-03-09 18:26:53 +08:00
2026-02-28 11:45:04 +08:00
2026-02-04 02:04:54 +08:00
2025-12-18 02:20:53 +08:00
2026-03-12 17:11:14 +08:00
2026-03-09 22:57:23 +08:00
2026-02-16 11:00:48 +08:00
2026-03-03 17:24:22 +08:00
2026-03-14 11:59:07 +08:00
2026-03-14 01:33:08 +08:00
2026-02-09 11:37:41 +08:00
2026-03-09 14:54:45 +08:00
2026-02-27 13:54:46 +08:00
2026-03-07 15:33:29 +08:00
2026-02-27 13:54:46 +08:00
2026-03-15 00:23:19 +08:00
2026-03-15 00:23:19 +08:00
2026-02-06 16:37:06 +08:00
2026-03-06 21:06:45 +08:00
2026-02-05 15:59:41 +08:00
2026-03-05 15:15:26 +08:00
2026-03-07 15:33:29 +08:00
2026-02-16 11:00:48 +08:00
2026-03-14 11:59:07 +08:00
2026-03-10 23:14:05 +08:00
2026-03-10 10:40:50 +08:00
2026-02-01 17:28:00 +08:00
2026-03-09 22:57:23 +08:00
2026-03-10 12:47:50 +08:00
2026-03-08 00:05:48 +08:00
2026-03-06 13:13:01 +08:00
2026-03-10 10:40:50 +08:00
2026-03-10 10:40:50 +08:00
2026-02-27 13:58:58 +08:00
2026-03-04 22:06:19 +08:00
2026-03-05 09:53:23 +08:00
2026-03-10 10:40:50 +08:00
2026-03-04 22:06:19 +08:00
2026-03-14 11:59:07 +08:00
2026-03-05 09:53:23 +08:00
2026-03-05 15:15:26 +08:00
2026-03-04 22:06:19 +08:00
2026-03-04 22:51:02 +08:00
2026-02-27 13:58:58 +08:00
2026-03-04 22:06:19 +08:00
2026-03-12 01:11:35 +08:00
2026-03-12 01:11:35 +08:00
2026-03-12 01:11:35 +08:00
2026-03-05 02:07:34 +08:00
2026-02-28 16:54:37 +08:00
2026-03-10 14:55:48 +08:00
2026-03-14 01:33:08 +08:00
2026-02-28 14:12:08 +08:00
2026-03-03 09:22:20 +08:00
2026-03-10 14:55:48 +08:00
2026-03-10 10:40:50 +08:00
2026-03-02 12:27:51 +08:00
2026-03-03 09:22:20 +08:00
2026-02-27 13:54:46 +08:00
2026-02-07 02:59:02 +08:00
2026-02-27 13:54:46 +08:00
2026-03-01 23:55:26 +08:00
2026-02-01 17:28:00 +08:00
2026-03-14 11:59:07 +08:00
2026-02-07 02:59:02 +08:00
2026-03-14 11:59:07 +08:00
2026-03-09 22:57:23 +08:00
2026-03-12 16:17:22 +08:00
2026-03-07 15:33:29 +08:00
2026-03-07 15:33:29 +08:00
2026-03-07 15:33:29 +08:00
2026-01-22 14:23:33 +08:00
2026-02-06 16:37:06 +08:00
2026-03-01 23:32:48 +08:00
2026-03-01 23:55:26 +08:00
2026-03-14 11:59:07 +08:00
2026-03-14 11:59:07 +08:00
2026-03-11 16:12:36 +08:00
2026-03-09 22:57:23 +08:00
2026-03-11 15:11:33 +08:00
2026-03-08 14:31:15 +08:00
2026-03-15 14:22:59 +08:00
2026-03-10 14:42:33 +08:00
2026-03-08 00:05:48 +08:00
2026-03-11 15:11:33 +08:00
2026-03-07 15:33:29 +08:00
2026-03-11 15:11:33 +08:00
2026-03-09 22:57:23 +08:00