Otimizando performance

Monitorar e Solucionar Problemas em Soluções Azure

Ebadur Osib

Senior Cloud Consulting Engineer

Performance é um recurso

App lenta

 

  • Performance impacta a confiança do usuário.
  • Apps lentas aumentam falhas.
  • A Azure ajuda a otimizar para:
    • Baixa latência
    • Alto tráfego
Monitorar e Solucionar Problemas em Soluções Azure

De onde vêm os problemas de performance

De onde vêm os problemas

Monitorar e Solucionar Problemas em Soluções Azure

Latência vs. throughput

Throughput vs. latência

Monitorar e Solucionar Problemas em Soluções Azure

Otimize o caminho crítico

Dependência mais lenta

  • A otimização começa identificando e encurtando a sequência mais lenta.
  • Nem tudo precisa do mesmo nível de tuning.
Monitorar e Solucionar Problemas em Soluções Azure

Reduzindo a latência de dependências

 

  • Dependências são a principal fonte de latência.
  • Como reduzir:
    • Otimização de queries
    • Pool de conexões
    • Lotes de requisições
    • Menos chamadas “tagarelas”
  • Mais eficaz que escalar compute.

Reduzindo latência

Monitorar e Solucionar Problemas em Soluções Azure

Cache

Cache

Monitorar e Solucionar Problemas em Soluções Azure

Azure Cache for Redis

Arquitetura do cache

1 https://learn.microsoft.com/en-us/azure/redis/architecture
Monitorar e Solucionar Problemas em Soluções Azure

Azure Managed Redis

Arquitetura do Redis gerenciado

1 https://learn.microsoft.com/en-us/azure/redis/architecture
Monitorar e Solucionar Problemas em Soluções Azure

Considerações de design de cache

 

  • Cache traz decisões importantes de design.

  • Define políticas de expiração dos dados em cache.

  • Há trade-offs entre consistência e atualidade.

  • Padrão comum: cache-aside, carrega no cache só quando precisa.

Nuvem de cache

  • Invalidação de cache garante que dados obsoletos sejam atualizados ou removidos.
Monitorar e Solucionar Problemas em Soluções Azure

Throttling e backpressure

 

  • Requisições em excesso podem causar falhas.
  • Throttling e backpressure protegem sistemas.
  • Atrasam ou rejeitam tráfego extra.

Throttling

Monitorar e Solucionar Problemas em Soluções Azure

Padrões assíncronos e baseados em fila

Padrões de filas

Monitorar e Solucionar Problemas em Soluções Azure

O problema de negócio

Problema de negócio

Monitorar e Solucionar Problemas em Soluções Azure

Encontrando o gargalo

Gargalo

Monitorar e Solucionar Problemas em Soluções Azure

Otimização para escala e velocidade

Otimizado

Monitorar e Solucionar Problemas em Soluções Azure

Vamos praticar!

Monitorar e Solucionar Problemas em Soluções Azure

Preparing Video For Download...