http-429

HTTP 429 Too Many Requests 的定位与处理

现象

客户端收到 429 Too Many Requests,通常带 Retry-After 或 X-RateLimit-* 响应头。可能是限流策略、突发流量、重试风暴或共享出口 IP。

快速定位

curl -v http://<host>/api
curl -sI http://<host>/api | grep -i -E 'retry-after|ratelimit|x-rate'
nginx -T | grep -nE 'limit_req|limit_conn'
tail -f /var/log/nginx/error.log

常见根因

  1. 单 IP/单用户的请求速率超过阈值。
  2. 客户端重试没有退避,放大流量。
  3. NAT/代理后大量用户共享一个出口 IP。
  4. 限流窗口/burst 配置过严。
  5. 上游 API 或网关有自己的配额。

修复

相关命令