Úvod do Azure Service Bus

Develop Azure Event-based and Message-based Solutions

Fiodar Sazanavets

Senior Software Engineer and Microsoft MVP

Queue Storage vs Service Bus

Queue Storage

  • Jednoduchý seznam úkolů
  • Bez pokročilých funkcí
  • Každá zpráva zpracována jednou

Service Bus

  • Podnikový messaging
  • Silnější záruky doručení
  • Bohatší směrování
  • Funkce koordinace
  • Může mít více spotřebitelů

Queue Storage

Service Bus

Develop Azure Event-based and Message-based Solutions

Fronty Service Bus

  • Point-to-point:
    • Producent odešle zprávu
    • Jeden spotřebitel ji převezme
    • Zpráva zpracována jednou
  • Podobně jako Queue Storage

Logo Service Bus

Develop Azure Event-based and Message-based Solutions

Témata Service Bus

  • Model publish-subscribe
    • Více producentů odesílá zprávy
    • Více spotřebitelů může obdržet tutéž zprávu
  • Každé předplatné může filtrovat zprávy:
    • Každé předplatné dostává relevantní zprávy
  • Fronta je jako jedna schránka
  • Téma je jako poštovní seznam

Téma Service Bus

Develop Azure Event-based and Message-based Solutions

Spolehlivost zpráv

  • Vestavěná spolehlivost:
    • Selhání jsou ošetřena
    • Automatické opakování
  • Fronta nedoručených zpráv:
    • Vyhrazena pro neúspěšné zprávy
    • Zprávy lze prověřit

Spolehlivost zpráv

Develop Azure Event-based and Message-based Solutions

Detekce duplicit

  • Detekce duplicit zabraňuje dvojímu zpracování zpráv.

  • Pokud odesílatel zopakuje odeslání a zpráva dorazí znovu, je rozpoznána podle ID zprávy.

  • Duplicity jsou zahozeny v rámci nastaveného časového okna.

  • To zajišťuje zpracování téměř přesně jednou i při opakování přenosu.

Detekce duplicit Service Bus

Develop Azure Event-based and Message-based Solutions

Zpracování v pořadí

Relace Service Bus

  • Relace Service Bus umožňují zpracování zpráv v pořadí.

  • Související zprávy sdílejí ID relace (např. všechny aktualizace téže objednávky).

  • Každá relace je doručena vždy jednomu spotřebiteli.

  • Pořadí zpráv je zachováno v rámci relace a spotřebitel může udržovat lehký stav.

  • Více relací lze zpracovávat paralelně, přičemž každá zůstává seřazena.

Develop Azure Event-based and Message-based Solutions

Pojďme si procvičit!

Develop Azure Event-based and Message-based Solutions

Preparing Video For Download...