feat(server): 添加可插拔速率限制系统 | add pluggable rate limiting system (#388)

* feat(server): 添加可插拔速率限制系统 | add pluggable rate limiting system

- 新增令牌桶策略 (TokenBucketStrategy) - 推荐用于一般场景
- 新增滑动窗口策略 (SlidingWindowStrategy) - 精确跟踪
- 新增固定窗口策略 (FixedWindowStrategy) - 简单高效
- 新增房间速率限制 mixin (withRateLimit)
- 新增速率限制装饰器 (@rateLimit, @noRateLimit)
- 新增按消息类型限流装饰器 (@rateLimitMessage, @noRateLimitMessage)
- 支持与认证系统组合使用
- 添加中英文文档
- 导出路径: @esengine/server/ratelimit

* docs: 更新 README 添加新模块 | update README with new modules

- 添加程序化生成 (procgen) 模块
- 添加 RPC 框架模块
- 添加游戏服务器 (server) 模块
- 添加事务系统 (transaction) 模块
- 添加世界流送 (world-streaming) 模块
- 更新网络模块描述
- 更新项目结构目录
This commit is contained in:
YHH
2025-12-29 17:12:54 +08:00
committed by GitHub
parent 764ce67742
commit afdeb00b4d
23 changed files with 3467 additions and 6 deletions

View File

@@ -0,0 +1,14 @@
---
"@esengine/server": minor
---
feat(server): 添加可插拔速率限制系统 | add pluggable rate limiting system
- 新增令牌桶策略 (`TokenBucketStrategy`) - 推荐用于一般场景
- 新增滑动窗口策略 (`SlidingWindowStrategy`) - 精确跟踪
- 新增固定窗口策略 (`FixedWindowStrategy`) - 简单高效
- 新增房间速率限制 mixin (`withRateLimit`)
- 新增速率限制装饰器 (`@rateLimit`, `@noRateLimit`)
- 新增按消息类型限流装饰器 (`@rateLimitMessage`, `@noRateLimitMessage`)
- 支持与认证系统组合使用
- 导出路径: `@esengine/server/ratelimit`