Glossário

O Que É Limitação de Taxa?

A limitação de taxa é uma defesa do lado do servidor que restringe quantas requisições um único cliente (identificado por IP, conta ou sessão) pode fazer em uma determinada janela de tempo, usada para proteger a infraestrutura, prevenir abusos e garantir o uso justo dos recursos.

Entenda como sites e APIs limitam clientes de alto volume, os algoritmos por trás dos limites de taxa (token bucket, sliding window, fixed window), e como os proxies rotativos derrotam os limites por IP.

Explicado

Rate limiting é a forma como os servidores se protegem contra abusos. Toda API e site voltados ao público limitam o número de requisições que um único cliente pode enviar em uma janela de tempo — `100 requisições por IP por minuto`, `5000 requisições por chave de API por hora`, `30 logins por conta por dia`. Quando um cliente excede o limite, o servidor retorna uma resposta 429 Too Many Requests (ou, em alguns casos, apenas reduz silenciosamente as respostas, coloca a requisição em fila ou passa a exibir CAPTCHAs).

Para cargas de trabalho de scraping e coleta de dados, o rate limiting é o piso operacional que determina a velocidade máxima possível. A solução ingênua — enviar menos requisições — limita sua taxa de transferência. A solução real é distribuir as requisições entre muitos identificadores (IPs, contas, IDs de sessão) para que nenhum identificador único ultrapasse seu limite. É exatamente por isso que os proxies residenciais existem como categoria de produto.

Os algoritmos de rate limiting do lado do servidor têm algumas formas. O token bucket permite que o cliente acumule tokens a uma taxa constante até um limite, permitindo picos de até o tamanho desse limite. A sliding window conta requisições em uma janela de tempo móvel, suavizando o limite. A fixed window reinicia a contagem em limites de relógio (por minuto, por hora). Cada uma tem implicações diferentes para como os scrapers devem ritmar suas requisições.

Como Funciona

A cada solicitação recebida, o servidor identifica o cliente (por IP, chave de API, ID de conta ou token de sessão) e verifica um contador para esse identificador na janela atual. Se o contador estiver abaixo do limite, a solicitação passa e o contador é incrementado. Se o contador estiver acima do limite, o servidor retorna 429 com um cabeçalho `Retry-After` indicando quanto tempo esperar.

A maioria das grandes APIs usa uma combinação de identificadores: o mesmo IP e conta atingem contadores diferentes com limites diferentes. As regras de limite de taxa da Cloudflare, por exemplo, podem limitar por IP, por caminho de URL, por sessão, ou por qualquer combinação. Alguns sistemas avançados usam variantes de leaky-bucket ou sliding-window-counter para uma aplicação mais suave.

Tipos

Token Bucket

Um bucket é preenchido com tokens a uma taxa constante até um limite máximo. Cada solicitação consome um token. Permite picos até o tamanho do bucket, suavizados ao longo do tempo. O algoritmo mais comum na limitação de taxa de APIs modernas.

Balde Furado

As solicitações entram em uma fila (bucket) que é esvaziada a uma taxa fixa. O excesso de solicitações transborda e é rejeitado. Suaviza picos de forma mais rígida do que o token bucket.

Janela Fixa

O contador reinicia em limites de relógio (a cada minuto, a cada hora). Simples de implementar, mas tem problemas de rajada nos limites da janela (um cliente pode enviar 2x o limite ao abranger duas janelas).

Janela Deslizante

O contador observa os últimos N segundos em vez de janelas discretas. Aplicação mais suave do que janela fixa. Log de janela deslizante e contador de janela deslizante são variantes comuns.

Limitação de Taxa Adaptativa / Comportamental

Os limites se ajustam com base nos padrões de requisição e na pontuação de risco. Usado por fornecedores de anti-bot (Cloudflare, Datadome), o mesmo cliente pode ter permissão para 1000 requisições/minuto ou 10, dependendo de quão 'real' o tráfego parece.

Casos de Uso Comuns

Protegendo APIs públicas contra abuso
Prevenindo ataques de credential stuffing (limites de taxa de login)
Gerenciamento do custo de infraestrutura em escala
Aplicação de níveis de uso justo entre clientes
Reduzindo a velocidade de scrapers e abusos de conteúdo
Limitando tempestades de retry durante quedas
Perguntas Frequentes

Perguntas frequentes

Perguntas comuns sobre limitação de taxa.

Distribuindo as requisições entre muitos IPs. Se um destino limita a taxa em 60 requisições por IP por minuto e você faz a rotação por requisição em um pool residencial de 10.000 IPs, teoricamente você pode atingir 600.000 requisições por minuto contra o destino sem que nenhum IP individual atinja seu limite. Na prática, sinais comportamentais também importam, mas a rotação de IPs é a técnica fundamental.

HTTP 429 'Muitas Solicitações' indica que o cliente excedeu um limite de taxa. A resposta geralmente inclui um cabeçalho `Retry-After` indicando quanto tempo esperar antes de tentar novamente. Clientes bem comportados respeitam o Retry-After; scrapers que precisam de maior taxa de transferência alternam para um novo IP e tentam novamente imediatamente.

Apenas marginalmente, ritmando as solicitações abaixo do limite e reutilizando um IP lentamente. Para qualquer caso de uso com volume real, proxies rotativos são necessários. A economia de comprar IPs independentes suficientes para driblar limites de taxa por IP sem um pool residencial torna isso impraticável para qualquer coisa além de operações minúsculas.

Leia os cabeçalhos de resposta. Muitas APIs enviam os cabeçalhos `X-RateLimit-Limit`, `X-RateLimit-Remaining`, `X-RateLimit-Reset` descrevendo o limite, seu orçamento restante e quando a janela se reinicia. Para sites que não fazem isso, observe os códigos de resposta (401, 429, 503) e recue quando eles começarem a aparecer.

O rate limiting reduz o volume de requisições; um CAPTCHA desafia o cliente a provar que é humano. A maioria das stacks anti-bot combina os dois: dentro do limite, as requisições passam; acima do limite, as requisições recebem um desafio CAPTCHA em vez de um bloqueio total. Ambos protegem contra as mesmas ameaças a partir de ângulos diferentes.

Sim. O gateway de proxies residenciais da Shifter distribui suas solicitações em um grande pool de IPs, portanto os limites de taxa por IP se aplicam a apenas uma fração do seu volume total. Combine isso com um ritmo realista por sessão e fingerprints de navegador modernos, e a maioria das barreiras de limite de taxa se torna efetivamente invisível.