Cache de respostas e cotas de uso

Azure API Management

Fiodar Sazanavets

Senior Software Engineer at Microsoft

Configurando o cache de respostas

  • Com respostas em cache, não é preciso chamar o endpoint do backend
  • O cache é aplicado a endpoints populares que retornam os mesmos dados
  • Viagens ao endpoint consomem tempo e custam caro
  • Pode ser implementado no APIM via políticas de cache

Cache de respostas

Azure API Management

Configurando o cache de respostas

  • A configuração de políticas de cache pode:
    • Definir a duração do cache
    • Variar por query string ou headers
    • Definir onde o cache fica
  • A localização do cache pode ser:
    • Na edge, ou seja, no API gateway
    • Serviço externo de cache, por exemplo, Redis

Políticas de cache

Azure API Management

Protegendo contra picos de requisições

Limitação de taxa

  • Mesmo com cache, clientes demais podem sobrecarregar APIs
    • Causa desempenho mais lento
    • Aumenta custos de recursos
    • Pior caso: indisponibilidade (ex.: ataque DDoS)
Azure API Management

Como cotas de uso protegem APIs

  • Restringir o número de chamadas por período
    • Protege contra picos súbitos de requisições
  • Pode proteger contra ataques DDoS
  • Economiza ao evitar uso excessivo

Azure API Management

Medindo o uso de recursos

Application Insights

  • Você não melhora o que não mede

    • Ative o Application Insights para acompanhar métricas (ex.: latência, outliers)
  • Exemplo: chamada "GET Products"

    • Baixa taxa de acerto do cache e alto tráfego
    • Solução: aumentar a duração do cache (5 -> 30 minutos)
  • Com insights, você ajusta:

    • Durações de cache
    • Limites de cota
    • Níveis de serviço para melhor custo-desempenho
Azure API Management

Vamos praticar!

Azure API Management

Preparing Video For Download...