Sobre cotas

O Cloud Endpoints fornece cotas que permitem controlar a taxa em que os aplicativos podem chamar sua API. A configuração de uma cota permite que você especifique limites de uso para proteger sua API contra um número excessivo de solicitações de chamadas de aplicativos. Essas solicitações podem ter sido causadas por um erro de digitação simples ou por um sistema projetado de modo ineficiente, que faz chamadas desnecessárias para sua API. Seja qual for a causa, bloquear o tráfego de uma fonte específica assim que atinge um certo nível é necessário para garantir a integridade geral da sua API. Ao definir uma cota, você impede que um aplicativo específico afete negativamente todos os outros aplicativos que usam sua API.

Nesta página, você terá uma visão geral da principal funcionalidade proporcionada pelas cotas.

As solicitações estão vinculadas ao projeto do consumidor

Depois de configurar uma cota, o Endpoints acompanha o número de solicitações por minuto por projeto do Google Cloud Platform (GCP) do consumidor. Cada aplicativo que chama sua API precisa:

  • ter um projeto do GCP;
  • ativar a API no projeto do GCP;
  • enviar uma chave de API com cada solicitação para a API. Isso permite que o Endpoints identifique o projeto do GCP associado ao aplicativo de chamada e incremente o contador de solicitações para o projeto do GCP.

Os consumidores de APIs podem criar os próprios projetos no Console do Google Cloud Platform, mas também é possível que você crie os projetos para eles. Como o Endpoints impõe cotas por projeto, é preciso ter um para cada consumidor da API.

Limitar o número de solicitações por minuto

Ao definir uma cota, é possível limitar o número de solicitações por minuto para a API toda ou apenas para métodos específicos. Se o código do cliente de um projeto do consumidor exceder o limite que você configurou, a solicitação será rejeitada antes de chegar à API e um código de status HTTP 429 too many requests será retornado. Nos aplicativos que fazem a chamada, será necessário processar o código de status 429 e usar a espera exponencial ou alguma outra lógica de nova tentativa para reduzir a taxa de chamadas à API.

Configurar uma ou mais cotas

É possível configurar uma ou mais cotas nomeadas e especificar um limite de taxa diferente para cada uma delas. Por exemplo, você pode ter alguns métodos na sua API que usam muitos recursos, como um método que executa uma consulta complexa e retorna uma grande lista de resultados, e outros que são rápidos e leves. Seu objetivo é configurar duas cotas com diferentes limites de taxa e associar os métodos que usam muitos recursos a uma cota e os leves a outra.

Configurar um custo

Ao associar um método a uma cota, você sempre especifica um custo para a solicitação. Isso permite que métodos diferentes consumam a mesma cota a taxas diferentes. É possível usar os custos como alternativa para configurar diferentes cotas. Por exemplo, suponha que você configure uma cota com um limite de 1.000 solicitações por minuto. Para os métodos leves, você configura um custo de um, o que significa que os clientes podem chamar os métodos leves 1.000 vezes por minuto. Para os métodos que usam muitos recursos, você configura um custo de dois, o que significa que a cada chamada do método pelo cliente, o contador de solicitações é incrementado em dois, até atingir o limite de 1.000. Ou seja, isso limita os métodos que usam muitos recursos a 500 solicitações por minuto.

Substituir a cota configurada

A página Endpoints > Serviços exibe a cota configurada para cada método na sua API. Se necessário, substitua o limite configurado para um projeto de consumidor específico. Para fazer uma substituição, insira o número do projeto consumidor na página Endpoints > Serviços. Se você não é membro do projeto do consumidor que quer substituir, entre em contato com um membro para conseguir o número do projeto.

A seguir

Esta página foi útil? Conte sua opinião sobre:

Enviar comentários sobre…

Cloud Endpoints com gRPC
Precisa de ajuda? Acesse nossa página de suporte.