Appearance
速率限制
系统在多个层面实施速率限制以保护服务稳定性。
REST API 速率限制
验证码发送
| 限制项 | 值 | 说明 |
|---|---|---|
| 冷却时间 | 60 秒 | 同一手机号连续发送的最小间隔 |
超限返回 429 Too Many Requests。
登录尝试
| 限制项 | 值 | 说明 |
|---|---|---|
| 最大尝试次数 | 服务器配置 | 连续验证码错误次数 |
| 锁定时间 | 服务器配置 | 超限后的锁定时长 |
超限返回 429,并在锁定期内拒绝所有登录尝试。
WebSocket 速率限制
WebSocket 消息发送有多层限制:
对话消息
| 限制层 | 说明 |
|---|---|
| 用户级 | 单用户跨所有对话的总消息速率 |
| 对话级 | 单个对话的消息速率 |
| 控制消息级 | stop_completion、tool_confirmation 等控制消息的独立限制 |
超限时收到 WebSocket error 消息:
json
{
"type": "error",
"message": "发送频率过高,请稍后再试",
"code": "rate_limited"
}画布操作
画布操作有用户级速率限制。超限时操作被静默丢弃或返回错误。
429 vs 529
| 状态码 | 含义 | 触发者 |
|---|---|---|
429 | 你请求太频繁 | 客户端超过平台限制 |
529 | 上游服务过载 | AI 服务提供商限流 |
客户端处理建议:
429:降低请求频率,遵守冷却时间529:非客户端问题,稍后重试即可
测试要点
测试建议
- 快速连续发送验证码,验证冷却时间
- 连续输入错误验证码,验证锁定行为
- WebSocket 中快速连续发送消息,验证限流响应
- 限流恢复后操作应正常
- 不同用户之间的限流应独立