公开的采集接口容易被刷,除了业务层限流,Nginx 层也值得加一道防线。

基础配置

limit_req_zone $binary_remote_addr zone=api:10m rate=5r/s;
limit_conn_zone $binary_remote_addr zone=conn:10m;

location /api/ {
    limit_req zone=api burst=10 nodelay;
    limit_conn conn 20;
}

观察

结合 access_log 统计高频 IP,必要时在安全组或防火墙层封禁。