Como lidar com a limitação da API
A limitação da API é um desafio comum que os programadores enfrentam ao criar aplicações que dependem de APIs na cloud. Seguem-se algumas técnicas comuns que pode utilizar para lidar com a limitação da API nas suas aplicações:
- Utilize a Limitação de Taxa. Se a API que utiliza suportar a limitação de taxas, utilize as informações de limitação de taxa enviadas pela API na sua aplicação para garantir que a sua aplicação não excede os limites de taxa da API.
- Processar cabeçalhos de Retry-After. Algumas APIs enviam um
Retry-After
cabeçalho na resposta quando um pedido é limitado. Se for limitado e a API enviar uma resposta com umRetry-After
cabeçalho, aguarde a hora especificada antes de enviar outro pedido. - Recuo Exponencial. Se a API que utiliza não enviar um
Retry-After
cabeçalho, implemente um algoritmo de backoff exponencial. Depois de cada pedido falhado, aguarde duas vezes antes de tentar novamente. Ajuda-o a reduzir a carga na API e a aumentar as hipóteses de os seus pedidos subsequentes serem bem-sucedidos. - A cache recebeu dados anteriormente. Respostas em cache da API, especialmente para pedidos que são susceptíveis de devolver os mesmos dados. A colocação em cache ajuda-o a reduzir o número de chamadas efetuadas à API e a manter-se dentro dos limites de taxa.
- Pedidos de fila. Implemente uma fila para pedidos de API de saída para gerir a taxa de pedidos e garantir que os limites de taxa da API não são excedidos.
- Otimizar chamadas à API. Otimize as chamadas à API ao obter apenas os dados de que precisa e ao utilizar pedidos em lote, se suportados pela API. Ajuda-o a reduzir o número de recursos necessários para processar a resposta e manter-se dentro dos limites de taxa.
Ao implementar estas técnicas, pode tornar a sua aplicação mais resiliente à limitação da API e garantir uma interação mais suave com os serviços externos.
Depois de implementar estas técnicas na sua aplicação, teste se lida corretamente com a limitação.
Colabore connosco no GitHub
A origem deste conteúdo pode ser encontrada no GitHub, onde também pode criar e rever problemas e pedidos Pull. Para mais informações, consulte o nosso guia do contribuidor.