Optimalizace výkonu

Monitorování a řešení problémů s Azure řešeními

Ebadur Osib

Senior Cloud Consulting Engineer

Výkon je funkce

SlowApp.jpg

 

  • Výkon ovlivňuje důvěru uživatelů.
  • Pomalé aplikace zvyšují počet chyb.
  • Azure pomáhá vývojářům optimalizovat:
    • Nízkou latenci
    • Vysoký provoz
Monitorování a řešení problémů s Azure řešeními

Zdroje problémů s výkonem

WhereProblemsComeFrom.jpg

Monitorování a řešení problémů s Azure řešeními

Latence vs. propustnost

ThroughputvsLatency.jpg

Monitorování a řešení problémů s Azure řešeními

Optimalizace kritické cesty

slowestdependency.jpg

  • Optimalizace začíná identifikací a zkrácením nejpomalejší sekvence.
  • Ne vše vyžaduje stejné ladění.
Monitorování a řešení problémů s Azure řešeními

Snížení latence závislostí

 

  • Závislosti jsou nejčastějším zdrojem latence.
  • Metody snížení:
    • Optimalizace dotazů
    • Sdružování připojení
    • Dávkování požadavků
    • Snížení počtu volání
  • Efektivnější než škálování výpočetního výkonu.

reducinglatency.jpg

Monitorování a řešení problémů s Azure řešeními

Ukládání do mezipaměti

cache.jpg

Monitorování a řešení problémů s Azure řešeními

Azure Cache for Redis

cache-architecture.png

1 https://learn.microsoft.com/en-us/azure/redis/architecture
Monitorování a řešení problémů s Azure řešeními

Azure Managed Redis

managed-redis-architecture.png

1 https://learn.microsoft.com/en-us/azure/redis/architecture
Monitorování a řešení problémů s Azure řešeními

Aspekty návrhu mezipaměti

 

  • Ukládání do mezipaměti vyžaduje důležitá návrhová rozhodnutí.

  • Je nutné definovat zásady expirace dat v mezipaměti.

  • Existují kompromisy mezi konzistencí a aktuálností.

  • Běžným vzorem je cache-aside, kdy jsou data načtena do mezipaměti pouze tehdy, když jsou potřeba.

cachecloud.jpg

  • Invalidace mezipaměti zajišťuje obnovení nebo odstranění zastaralých dat.
Monitorování a řešení problémů s Azure řešeními

Throttling a protitlak

 

  • Příliš mnoho požadavků může způsobit selhání.
  • Throttling a protitlak chrání systémy.
  • Zpomaluje nebo odmítá nadměrný provoz.

throttling.jpg

Monitorování a řešení problémů s Azure řešeními

Asynchronní vzory a vzory založené na frontách

queues.jpg

Monitorování a řešení problémů s Azure řešeními

Obchodní problém

BusinessProblem.jpg

Monitorování a řešení problémů s Azure řešeními

Nalezení úzkého hrdla

Bottleneck.jpg

Monitorování a řešení problémů s Azure řešeními

Optimalizace pro škálování a rychlost

Optimized.jpg

Monitorování a řešení problémů s Azure řešeními

Pojďme si procvičit!

Monitorování a řešení problémů s Azure řešeními

Preparing Video For Download...