Skip to content

限流与重试

WebSocket 限流用于保护长连接、认证凭证和设备控制通道。

客户端应把限流视为正常保护机制,而不是服务异常。

限流范围

范围说明
创建 wsTicket限制短时间内频繁创建一次性连接凭证
建立 WebSocket 连接限制频繁建连、断连和重连
session.ping限制过高频率的应用层心跳
请求主题限制同一连接内的高频请求
设备控制限制对同一设备或同一继电器的高频控制

推荐频率

场景推荐值
session.ping30 秒一次
断线重连使用指数退避,并加入随机抖动
创建 wsTicket仅在建连前创建,不提前批量创建
状态查询优先使用事件更新,避免紧密循环查询

Rate Limited

当 WebSocket 请求触发限流时,服务可能返回 session.error

json
{
  "type": "event",
  "topic": "session.error",
  "data": {
    "code": "RATE_LIMITED",
    "message": "Rate limit was exceeded."
  }
}

如果是 POST /wlte/v1/ws/ticket 触发限流,HTTP 响应使用 429 RATE_LIMITED

客户端处理

  • 收到 RATE_LIMITED 后应降低请求频率
  • 重连应使用指数退避,不要立即循环重连
  • 创建 wsTicket 失败后,不要并发重复创建
  • 如果是设备控制触发限流,客户端应等待当前操作结果稳定后再发起下一次操作

与 HTTP 限流的关系

POST /wlte/v1/ws/ticket 是 REST 端点,遵循 REST API 的 限流与重试

WebSocket 连接建立后的请求和事件遵循本页规则。

Docs buildVersion v1.2.19-20260602-174859-60
Copyright © 2026 WLTE