Desenvolvimento de produtos SaaS

O que é Limitação de Taxa de API em SaaS?

Autor: Oleksandra Butenko, Redatora

Revisado por: Marta Dozorska, VP de Produto

O que é Limitação de Taxa de API SaaS

O que é Limitação de Taxa de API em SaaS?

A API SaaS de uma aplicação baseada em nuvem limita o número de chamadas de API a um serviço por um determinado período para um dispositivo cliente, usuário, IP, chave ou tenant. O cliente é configurado para enviar um número específico de requisições. Este tipo de limitação de API tem implicações para a capacidade da infraestrutura do serviço, pois também auxilia na limitação de acesso do usuário e ajuda no gerenciamento de gastos na nuvem.

Dentro dos mecanismos de controle de taxa, o monitoramento de mensagens ‘429 Too Many Requests’ é uma prática comum, ocorrendo quando os servidores as transmitem para os clientes após o limite de suas solicitações ser atingido. Em muitos casos, os servidores usam o cabeçalho “Retry-After” para informar aos clientes qual atraso é recomendado entre as novas tentativas de solicitação.

Como funciona a Limitação de Taxa de API?

Algoritmo Comportamento
Janela fixa Simples, mas pode criar picos de requisições nos limites da janela
Janela deslizante Mais justo, ao custo de mais coordenação e memória
Balde de tokens Permite rajadas controladas enquanto impõe uma taxa média
Balde furado Ajusta a saída para manter a consistência da taxa

Como a Limitação de Taxa de API e o Throttling diferem?

Técnica para
Throttling Suavizando rajadas
Limitação de taxa Garantindo justiça e protegendo recursos compartilhados

 

Por que a Limitação de Taxa de API é essencial para provedores de SaaS?

Aqui está o que a limitação de taxa faz especificamente:

  • Está associado à resolução de potenciais problemas operacionais do sistema que podem surgir de um alto volume de requisições de uma origem imprevista.
  • Impede atividades como web scraping ou ataques de força bruta.
  • Aborda o custo decorrente de autoscaling ou do uso de recursos por sistemas a jusante.

Quais são as melhores práticas do lado do cliente para lidar com os limites de taxa da API?

  1. Siga as instruções fornecidas nos cabeçalhos Retry-After.
  2. Tente um backoff exponencial com um componente aleatório.
  3. “Enfileire” as requisições ou distribua a carga em alta concorrência.
  4. Você pode implementar um token bucket para gerenciamento de tráfego e fila no lado do cliente para cargas de trabalho que exigem paralelismo.
Tenha em mente:

O comportamento de repetição está associado aos efeitos de manada e à confiabilidade sob carga.

Uma solução típica envolve várias camadas: gateway de API, plataforma de segurança de borda e sistema de controle de serviço ou de cotas. Os seguintes padrões podem ser aplicáveis:

  • Limites por chave
  • Limites por locatário
  • Limites específicos de endpoint
  • Planos em camadas
Observação:

Uma abordagem em camadas é frequentemente a melhor para SaaS, proteção de borda, limitação de gateway e regras de negócios no nível do aplicativo.

 

Como os provedores de SaaS podem comunicar eficazmente os atrasos na Limitação de Taxa aos usuários?

Em casos onde a limitação de taxa contribui para um maior número de contatos de clientes com a equipe de suporte, é aconselhável explicar a justificativa para as limitações de requisição. Os fornecedores devem ser aconselhados a:
· Usar códigos de status HTTP distintos.
· Exibir os cabeçalhos Retry-After e de limite de taxa.
· Os limites especificados nos documentos devem ser comunicados aos desenvolvedores.
· Onde viável, exibir as estatísticas de uso do cliente ou sua cota restante.

 

Tenha em mente:

A experiência do usuário envolve mensagens de erro legíveis por humanos, metadados legíveis por máquina e uma opção de autoatendimento para solicitações de aumento de cota.

Quais são as limitações da Limitação de Taxa de API e que estratégias complementares existem?

A limitação de taxa gerencia abusos, custos e justiça, mas sua eficácia na resolução de problemas em sistemas distribuídos pode ter limites. A integração da limitação de taxa com outros controles merece consideração:

  • Cotas
  • WAF ou proteção contra bots
  • Autenticação e idempotência
  • Monitoramento

 

Conclusão

Limitação de taxa SaaS APIs é uma medida vital usada para proteger Infraestrutura em Nuvem, manter o serviço funcionando e disponível, e monitorar as operações. Este método utiliza vários algoritmos com controle de fluxo (throttling) e depende da comunicação com o cliente e de ajustes adequados dos limites.

Pronto para começar?

Já estivemos onde você está. Vamos compartilhar nossos mais de 20 anos de experiência e transformar seus sonhos globais em realidade.
Imagem em Mosaico
pt_BRPortuguês do Brasil