Co je událostmi řízená architektura – Event Driven Architecture (EDA)?

Událostmi řízená architektura, je architektonický styl, vytváření systémů, ale i aplikací, kde jsou základem události (indikující změny stavu), které již nastaly a jsou tedy neměnné.

Komponenty systému spolu komunikují výhradně pomocí událostí (eventů). Nepoužívají tedy příkazy nebo dotazy.

Mezi základní komponenty systému řízeného událostmi patří

  • Poskytovatelé eventů (např. monitorovací aplikace, senzory, middleware, aplikace)
  • Příjemci eventů (aplikace, které události zpracovávají a reagují na ně)
  • Komunikační kanál (Event Channel) – pro komunikaci mezi jednotlivými poskytovateli a příjemci – Může být založen na modelu publish/subscribe – (kde co příjde, to konzumujeme) nebo event streaming modelu (události jsou zaznamenávány do logu, kde se můžeme připojit ke streamu a číst různé části streamu – jak to umožňuje například Apache Kafka.

Architektura řízená událostmi tak podporuje

  • Asynchronní přenos zpráv v reálném čase mezi poskytovatelem a příjemcem, který umožňuje systému rychleji reagovat na vstupy.
  • Volnou vazbu mezi komponentami, kde komponenty v systému nemusí mít vzájemnou znalost o své existenci či topologii sítě.
  • Možnost přizpůsobit a rozšířit systém, kdy je možné do systému jednoduše přidávat další komponenty zpracovávající události a poskytující výstupy.
  • Škálovatelnost systému a toleranci systému k chybám, která je zajištěna možností přidávat do systému další komponenty pro zpracování a ukládání dat.

Tento architektonický styl se dnes často používá v distribuovaných systémech i přes

  • zvýšení složitosti systému v tom, že je někdy fungování systému těžké pochopit, testovat a odstraňovat chyby, protože vazby mezi komponentami jsou volné a je to nutné řešit monitorováním stavu systému.
  • vysoká dostupnost dat, tedy že mám k datům okamžitý přístup přináší omezení v tom, že architektura řízená událostmi zajišťuje pouze případná konzistenci dat. Tedy je potřeba myslet na to, že můžete pracovat s neaktuálními daty.

Událostmi řízená architektura se hodí v částech systému, kde jsou potřeba okamžité reakce. Přístup založený na modelu komunikace dotaz odpověď se uplatní zejména v částech systému, které jsou využívány uživatelem systému.

Zajímá-li vás technologie Data Distribution Service™ (DDS) 🌀, tak se přihlaste to skupiny DDS v Akci (LinkedIn). www.pavelpohanka.cz

PP
Author: PP

Podobné příspěvky

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna.