跳转至

限流

证据:ptrader-api-gateway/.../filter/RateLimitInterceptor.java、WeightConfigManager。

代码行为

  • 按 IP 和/或 UID 做加权限流。
  • 默认区间配置含 1m(ratelimit.intervals)。
  • 响应头模式:X-SAPI-USED-%s-WEIGHT-%s(区间 / 模式)。
  • 触发限制时,响应体约为
    {"code":-1003, "msg":"Too many requests; current request has limited."}
    (亦见 ApiErrorCode.TOO_MANY_REQUESTS = -1003)。

权重与数值上限来自运行时配置(Apollo / 环境变量),未完整纳入本仓库。

待文档化的限额(To Do)

项 状态
默认 IP/UID 每区间 weight 预算 [NEEDS-CONFIRMATION: 导出生产 weight 表]
逐接口 weight 映射 [NEEDS-CONFIRMATION]
下单笔数限制(TOO_MANY_ORDERS / -1015) [NEEDS-CONFIRMATION: 阈值]
listenKey 创建限速(CREATE_LISTEN_KEY_RATE_LIMIT / -1026) 文案暗示按小时;确认具体数值

WebSocket(独立)

证据:ptrader-ws-gateway/docs/WS_API_SPOT.md

限制 值
客户端消息 25 / 秒 / 连接
最大订阅流 1024 / 连接
Ping 间隔 20 s
Ping 超时 120 s
无订阅空闲 60 s 后断开