flex-height
text-black

Osoba, ktorá uskutočňuje nákup online

Čo je architektúra riadená udalosťami?

Model integrácie architektúry riadenej udalosťami zisťuje a funguje na dôležitých „udalostiach“ v reálnom čase.

default

{}

default

{}

primary

default

{}

secondary

Definícia architektúry riadenej udalosťami a dôvod, prečo na nej záleží

Architektúra riadená udalosťami je prístup k softvérovému dizajnu, ktorý umožňuje organizáciám okamžite reagovať na akúkoľvek zmysluplnú zmenu stavu. Predstavte si, či by podnik mohol reagovať v okamihu, keď sa stane niečo dôležité, ako napríklad zákazník uskutoční online nákup, senzor označí hroziacu poruchu, pokles ceny akcií alebo požiare bezpečnostných upozornení. Tieto zmeny – nazývané udalosti – sa dejú po celý čas, v každej organizácii, v každom odvetví. Úspech sa blíži k tomu, ako rýchlo môže podnik reagovať na udalosti.

Prichádza tu architektúra riadená udalosťami (EDA). Namiesto čakania na plánované aktualizácie alebo spoliehania sa na pevné, pevne pripojené systémy, architektúra riadená udalosťami umožňuje aplikáciám komunikovať asynchrónne prostredníctvom voľne spojených komponentov. To znamená, že každá časť systému môže konať nezávisle, bez toho, aby poznala vnútorné fungovanie ostatných, čo uľahčuje škálovanie, prispôsobenie a inováciu.

Výsledkom je, že moderné systémy využívajúce architektúru riadenú udalosťami umožňujú podnikom poskytovať rýchlejšie a personalizovanejšie skúsenosti, automatizovať operácie a zostať agilné aj pri rastúcich požiadavkách a objemoch dát. Prijatím architektúry riadenej udalosťami sa organizácie presúvajú od reaktívnej k proaktívnej, čím získavajú rýchlosť, flexibilitu a odolnosť potrebnú na prosperitu v dynamickom digitálnom svete.

Čo je to udalosť?

Udalosť je akákoľvek akcia alebo zmena stavu, ktorá ovplyvňuje podnik – napríklad, keď zákazník potiahne kreditnú kartu, cestujúci sa skontroluje na let, používateľ resetuje heslo alebo sklad aktualizuje jeho inventár. Myslite na to takto: udalosť je malý odkaz, ktorý hovorí „niečo sa práve stalo“, čo umožňuje, aby ostatné časti systému okamžite reagovali.

Spoločnosti sa stávajú udalosťami, keď dokážu zachytiť a reagovať na udalosti tak, ako sa vyskytujú, čo je celý čas. Niektoré bežné príklady udalostí zahŕňajú:

Základné komponenty architektúry riadenej udalosťami

Aby bola ich štruktúra konzistentná, schémy udalostí definujú štruktúru a formát udalosti vrátane toho, aké polia udalosť obsahuje, typy údajov a pravidlá interpretácie.

V architektúre riadenej udalosťami fungujú aplikácie ako producentiudalostí, ktorí produkujú alebo zaznamenávajú udalosti, alebo spotrebiteliaudalostí, ktorí spracúvajú a pracujú na udalostiach. Výrobcovia vysielajú udalosti spotrebiteľom v reálnom čase prostredníctvom sprostredkovateľa udalostí, ktorý je orientovaný na správy middleware. Spotrebitelia potom môžu udalosť spracovať a spustiť ďalšie vlastné akcie, pracovné postupy alebo udalosti. Tento dizajn umožňuje schopnosť reagovať v reálnom čase a inteligentnejšie rozhodnutia ako prúdy dát v.

Sprostredkovateľ udalostí spravuje kanály udalostí, ktoré spájajú producentov so spotrebiteľmi, zaisťuje spoľahlivé doručenie a často poskytuje funkcie, ako je filtrovanie, perzistencia a opakované prehrávanie. Oddeľovaním výrobcov a spotrebiteľov sprostredkovateľ podujatí robí systém odolnejším a škálovateľnejším.

Vo veľmi jednoduchej architektúre s jedným producentom a jediným spotrebiteľom v priamej vzájomnej komunikácii môžu byť eventoví makléri voliteľní. Vo väčšine podnikov však viaceré zdroje vysielajú udalosti viacerým spotrebiteľom, takže je potrebný maklér alebo dokonca sieť maklérov – známych aj ako „sieť udalostí“. Keď sa použije sprostredkovateľ udalostí alebo sieť udalostí, vytvorí „voľné spojenie“ aplikácií.

Synchrónna vs. asynchrónna komunikácia

So synchrónnou komunikáciou v architektúre riadenej udalosťami výrobca udalostí čaká na to, aby prijímač pred pokračovaním spracoval a odpovedal. Príkladom je, keď webový klient odošle požiadavku HTTP a čaká na odpoveď servera. Synchrónna komunikácia je zvyčajne pevne spojená a pomalšia pri ťažkom zaťažení a „zablokuje“ výrobcu, aby vykonal svoju ďalšiu úlohu, až kým nedostane odpoveď od spotrebiteľa.

S asynchrónnou komunikáciou v architektúre riadenej udalosťami producent nečaká na okamžitú odpoveď; môže pokračovať v spracovaní, kým spotrebiteľ udalosti spracuje správu neskôr. Príkladom je, keď systém zverejní udalosť sprostredkovateľovi udalosti a spotrebitelia ju spracujú nezávisle. Asynchrónna komunikácia je neblokujúca, voľne spojená a škálovateľná, vďaka čomu je lepšia pre systémy v reálnom čase a distribuované systémy.

Modely založené na požiadavkách verzus modely riadené udalosťami v architektúre riadenej udalosťami

V modeli riadenom požiadavkou sa interakcia začína požiadavkou od spotrebiteľa udalosti k serveru a server odpovie. Tento model je založený na pulze, čo znamená, že spotrebiteľ aktívne požaduje údaje alebo služby zo servera, keď ich potrebuje, namiesto toho, aby prijímal automatické aktualizácie, a môže byť synchrónny alebo asynchrónny. Modely založené na požiadavkách sú bežné v tradičných webových aplikáciách a rozhraniach API.

V modeli riadenom udalosťami začína interakcia s udalosťou – zmenou stavu alebo akcie, ktorá spúšťa spracovanie – a komponenty automaticky reagujú, keď sa vyskytnú udalosti, napríklad publikovať/prihlásiť sa na odber. Tento model je typicky založený na push, čo znamená, že systém automaticky odosiela („push“) udalosti alebo aktualizácie spotrebiteľom hneď, ako sa vyskytnú, bez toho, aby ich spotrebiteľ čakal na ich vyžiadanie. Modely riadené udalosťami sú asynchrónne, oddelené a ideálne pre odozvu v reálnom čase.

Zamyslite sa nad kľúčovými rozdielmi medzi modelmi takto: v modeloch riadených požiadavkami si používatelia vypýtajú údaje, keď je to potrebné; modely riadené udalosťami automaticky reagujú, keď sa niečo stane.

Spoločné modely architektúry riadené udalosťami

Vzory architektúry riadené udalosťami sú bežné prístupy k návrhu, ktoré definujú, ako systém riadený udalosťami zaznamenáva, spracováva a využíva udalosti. Vzory poskytujú opakovane použiteľné stratégie pre spracovanie komunikácie a zmeny stavu škálovateľným, oddeleným spôsobom. Organizácie aplikujú vzory architektúry riadené udalosťami počas návrhu a implementácie systému na riešenie spoločných problémov. Patrí sem distribúcia udalostí, konzistencia dát a škálovateľnosť v asynchrónnych, voľne spojených prostrediach.

Existujú štyri hlavné vzory na prenos udalostí v architektúre riadenej udalosťami:

Štýly spracovania udalostí

Štýly spracovania udalostí popisujú, ako systém zisťuje, interpretuje a funguje na udalostiach. Definujú zložitosť logiky, načasovania a vzťahov medzi udalosťami, ktorým systém rozumie. Existujú tri rôzne prístupy k spracovaniu udalostí, keď sa dostanú k spotrebiteľovi: jednoduché spracovanie udalostí, komplexné spracovanie udalostí a spracovanie toku udalostí.

1. Jednoduché spracovanie udalostí: Spotrebitelia spracúvajú každú udalosť tak, ako je prijatá. Príklady:

2. Komplexné spracovanie udalostí: Spotrebitelia spracúvajú sériu udalostí na zistenie vzorov a vykonávanie akcií na základe výsledku. Príklady:

3. Spracovanie prúdu udalostí: Spotrebitelia spracúvajú a pracujú na neustálom toku údajov (údaje v pohybe) v reálnom čase pomocou platformy na streamovanie údajov. Príklady:

Podniky si vyberajú svoj štýl spracovania udalostí v reálnom čase na základe svojich individuálnych potrieb a prípadov použitia.

Ako funguje architektúra riadená udalosťami

Architektúra riadená udalosťami je integračný model postavený na publikovanie, zachytávanie, spracovanie a reakciu na udalosti naprieč distribuovanými systémami v reálnom čase. Keď dôjde k udalosti v jednej aplikácii, správa sa automaticky odošle všetkým ostatným aplikáciám, ktoré o nej potrebujú vedieť, aby mohli na ňu následne pôsobiť.

Nasledujúce ukazuje, ako funguje architektúra riadená udalosťami krok za krokom:

  1. Udalosť nastane: nastane zmysluplná zmena stavu, ako napríklad zákazník zadá objednávku, senzor zistí teplotný hrot alebo platba zlyhá.
  2. Výrobca podujatia vydáva podujatie: Žiadosť, kde k udalosti došlo, vystupuje ako výrobca a udalosť zverejňuje maklérovi podujatia.
  3. Sprostredkovateľ udalostí sleduje podujatie: Sprostredkovateľ udalostí pôsobí ako sprostredkovateľ pri správe kanálov udalostí a doručovaní podujatia všetkým záujemcom o podujatie, čo pomáha zabezpečiť spoľahlivú, škálovateľnú a oddelenú komunikáciu.
  4. Spotrebitelia udalostí reagujú na udalosť: Aplikácie alebo služby, ktoré sa prihlásili na odber kanála udalostí, spracujú udalosť a podniknú príslušné kroky, ako je aktualizácia zásob, odoslanie potvrdzujúceho e-mailu alebo spustenie výstrahy.

Architektúry založené na udalostiach sú asynchrónne a oddelené, čo znamená, že aplikácie si nemusia byť navzájom vedomé na zdieľanie informácií a dokončenie úloh v reálnom čase. Informácie o udalostiach alebo správy môžu medzi aplikáciami voľne a automaticky prechádzať. V dôsledku toho je architektonický model riadený udalosťami oveľa rýchlejší a odolnejší ako tradičné modely riadené požiadavkami a riadené reakciami, kde si jedna aplikácia musí vyžiadať konkrétne informácie, ktoré potrebuje od druhej, a pred prechodom na ďalšiu úlohu počkať na odpoveď. Aj vďaka oddelenej povahe architektúry riadenej udalosťami sa všeobecne považuje za osvedčený postup pre mikroservisnú komunikáciu.

Prípady použitia a príklady z reálneho sveta

Architektúra riadená udalosťami umožňuje moderné digitálne skúsenosti naprieč odvetviami od bankovníctva a maloobchodu až po výrobu a logistiku. Umožnením automatizácie riadenej umelou inteligenciou, inteligencie udalostí a schopnosti reagovať v reálnom čase architektúra riadená udalosťami pomáha organizáciám modernizovať IT, oddeliť staršie systémy a bezproblémovo pracovať v multicloudovom prostredí.

Nasledujúce príklady ukazujú, ako funguje architektúra riadená udalosťami v praxi.

Reštauračný priemysel

  1. Študent vysokej školy zadá objednávku na pizzu pomocou aplikácie na doručenie jedla. Aplikácia zachytáva jeho základné informácie – meno, adresu, informácie o platbe a objednávku – a zverejňuje udalosť „objednávky pizze“.
  2. Pizza reštaurácia sa prihlási na akciu, splní objednávku a zverejní vlastnú „akciu pripravenú na objednávku“ späť do doručovacej služby jedla.
  3. Služba potom pridelí ovládač dodávky, naplánuje ETA a upozorní zákazníka, že jeho koláč je na ceste.

Elektronický obchod

  1. Internetový nakupujúci zadáva údaje o svojej kreditnej karte na stránke elektronického obchodu, ktorá zverejňuje udalosť „odoslaná platba“.
  2. Platobný systém sa prihlási na odber udalosti, spracuje platbu a vydá vlastnú udalosť „Platba spracovaná“, ktorá signalizuje úspech alebo neúspech a nasmeruje ju späť do používateľského rozhrania webovej stránky.
  3. Používateľské rozhranie zobrazuje stav platby zákazníkovi a vyvoláva ďalšie kroky.

Niektoré ďalšie príklady architektúry riadenej udalosťami zahŕňajú:

Telemetria IoT

Analytické funkcie a informácie o udalostiach

Automatizácia

Finančné transakcie

Dodávateľský reťazec

Modernizácia IT a oddelenie odkazov

Oznámenia

Všeobecné prípady použitia architektúry riadenej udalosťami zahŕňajú:

Výhody architektúry riadenej udalosťami

Organizácie môžu uplatniť výhody architektúry riadenej udalosťami na svoje moderné systémy. Medzi špičkové architektonické výhody založené na udalostiach patria:

  1. Schopnosť reagovať v reálnom čase a inteligentné pracovné postupy: Architektúra riadená udalosťami umožňuje systémom okamžite reagovať na udalosti tak, ako sa vyskytnú, čo spúšťa automatizované pracovné postupy a rozhodnutia v reálnom čase. Toto je mimoriadne dôležité v čase špičkového dopytu, napríklad počas veľkých predajných udalostí alebo sviatkov. Organizácie môžu uplatniť túto schopnosť reagovať na každodenné operácie, čím zlepšujú všetko od automatizácie dodávateľského reťazca a odhaľovania podvodov až po personalizovanú interakciu so zákazníkmi.
  2. Rýchlosť a efektivita pomocou asynchrónnej komunikácie: Aplikácie v architektúre riadenej udalosťami komunikujú asynchrónne, čo znamená, že výrobcovia publikujú správy o udalostiach bez toho, aby čakali, kým ich spotrebitelia dostanú. Tento neblokujúci prístup zlepšuje výkon, znižuje latenciu a umožňuje systémom spracovávať obrovské objemy udalostí bez prekážok.
  3. Flexibilita a škálovateľnosť prostredníctvom oddelenia a voľného spojenia: Komponenty v architektúre riadenej udalosťami sú oddelené alebo voľne spojené, takže fungujú nezávisle bez toho, aby sa spoliehali na vzájomnú dostupnosť alebo vnútornú logiku. To uľahčuje aktualizáciu, testovanie a nasadenie služieb bez narušenia celého systému. Oddelenie platieb tiež uľahčuje pridávanie ďalších výrobcov a spotrebiteľov podľa potreby, čo umožňuje plynulé škálovanie, keďže potreby podnikov rastú.
  4. Odolnosť a izolácia porúch: Pri oddelených službách sa poruchy v jednom komponente nekaskádujú cez systém. Každá služba môže zlyhať nezávisle, vďaka čomu je architektúra odolnejšia a odolnejšia voči chybám ako tradičné pevne spojené modely.
  5. Integrácia pripravená na budúcnosť: Voľné prepojenie a asynchrónny dizajn robia architektúru riadenú udalosťami ideálnou pre modernizáciu IT, oddelenie starších systémov a viaccloudové operácie. Organizácie získavajú flexibilitu pri integrácii nových technológií, ako sú automatizácia riadená umelou inteligenciou a informácie o udalostiach, bez prepisovania základných systémov.

Výzvy, obmedzenia a osvedčené postupy

Architektúry riadené udalosťami síce ponúkajú silné výhody, ale prinášajú aj nové návrhy a prevádzkové výzvy, ktoré musia organizácie plánovať. Pri implementácii architektúry riadenej udalosťami zvážte nasledujúce architektonické výzvy, obmedzenia a osvedčené postupy na zabezpečenie škálovateľných, odolných a dobre riadených systémov riadených udalosťami.

Výzvy

Ako zapadá akčná sieťovina

Sieť udalostí je architektonická schopnosť, ktorá spája viacerých sprostredkovateľov udalostí naprieč rôznymi hyperscalermi a v súkromných, hybridných a multicloudových prostrediach. Event mesh ponúka plne účelovú sadu pokročilých služieb pre udalosti vrátane streamovania udalostí, správy udalostí, monitorovania, dynamického smerovania správ a jemnozrnného filtrovania. Spojením sprostredkovateľov udalostí do distribuovanej siete môžu organizácie:

Ako chrbtová kosť pre moderné systémy je Event Mesh základnou vrstvou pre škálovateľné architektúry riadené udalosťami v reálnom čase. Pomáha zabezpečiť schopnosť reagovať v reálnom čase a zároveň zjednodušuje integráciu, znižuje chaos udalostí a posilňuje možnosti riešenia problémov v distribuovaných prostrediach.

Obmedzenia architektúry riadenej udalosťami

Osvedčené postupy pre architektúru riadenú udalosťami

Charakteristika architektúry riadenej udalosťami

Architektúra riadená podujatiami sa vo svojej podstate opiera o niekoľko definujúcich charakteristík, ktoré ju robia ideálnou pre distribuovanú, hybridnú a multi-cloudovú infraštruktúru.

Tieto charakteristiky spoločne vytvárajú architektúru riadenú udalosťami ako účinný prístup k budovaniu systémov, ktoré sú v reálnom čase, odolné, prispôsobivé a pripravené na rast – či už podporujete mikroslužby, integrujete cloudové infraštruktúry alebo využívate aplikácie obchodných procesov riadené udalosťami.

Často kladené otázky

Čo je to udalosť v architektúre riadenej udalosťami?
V architektúre riadenej udalosťami je udalosť zmysluplnou zmenou stavu obchodného procesu alebo systému, ako je vytvorenie, aktualizácia alebo dokončenie subjektu. Udalosti sú signály vysielané aplikáciami, keď sa stane niečo dôležité, takže ostatné systémy môžu byť oznámené v reálnom čase a reagovať bez tesného spojenia. Príklady udalostí zahŕňajú, keď je platba zákazníka úspešná alebo neúspešná, zásielka dorazí do skladu alebo opustí sklad a snímač stroja zistí nárast teploty.
Ako sa architektúra riadená udalosťami líši od architektúry riadenej požiadavkami?

Hlavný rozdiel medzi architektúrami riadenými udalosťami a žiadosťami spočíva v tom, ako systémy komunikujú a reagujú na zmeny. V modeli riadenom požiadavkou interakcia začína vtedy, keď spotrebiteľ požaduje dáta alebo akciu zo servera a server odpovie. Tento model je zvyčajne synchrónny, čo znamená, že žiadateľ čaká (bloky), kým nepríde odpoveď, a je založený na pull, čo znamená, že aplikácie dostávajú aktualizácie iba vtedy, keď o ne požiadajú.

V modeli riadenom udalosťou interakcia začína vtedy, keď nastane udalosť – zmysluplná zmena stavu v podnikovom systéme – a aplikácie automaticky reagujú. Systémy založené na udalostiach sú asynchrónne, takže výrobcovia zverejňujú udalosti bez toho, aby čakali na reakciu spotrebiteľa. Tento voľne viazaný model založený na push umožňuje aplikáciám pracovať nezávisle a spracovávať udalosti v reálnom čase v distribuovaných, hybridných a multi-cloud prostrediach.

Aké sú hlavné komponenty architektúry riadenej udalosťami?

Hlavnými zložkami architektúry založenej na podujatiach sú výrobcovia, spotrebitelia, sprostredkovatelia podujatí a kanály podujatí. Tieto komponenty spoločne vytvárajú asynchrónny, voľne spojený tok udalostí, ktorý umožňuje v reálnom čase škálovateľné interakcie naprieč distribuovanými, hybridnými a multi-cloudovými prostrediami:

  • Producenti: Aplikácie, ktoré generujú alebo zaznamenávajú udalosti, ako sú aktualizácie objednávok, platby a odpočty senzorov, a publikujú ich do systému riadeného udalosťami.
  • Spotrebitelia: Prihláste sa na odber, spracujte a reagujte na udalosti spustením workflow, aktualizáciou údajov, odosielaním oznámení alebo iniciovaním následných procesov
  • Sprostredkovatelia udalostí: Messaging middleware, ktorý smeruje udalosti od výrobcov k spotrebiteľom, poskytuje možnosti, ako je spoľahlivé doručenie, filtrovanie, dynamické smerovanie, perzistencia a opakované prehrávanie
  • Kanály udalostí: Cesty, ktoré sprostredkovateľ udalostí spravuje a spája výrobcov a spotrebiteľov: výrobcovia publikujú udalosti do kanála a spotrebitelia sa prihlásia na odber kanálov, ktoré sú pre nich relevantné
Aké sú bežné vzorce architektúry riadené udalosťami?

Architektonické vzory založené na udalostiach sú opakovane použiteľné koncepčné prístupy, ktoré definujú spôsob zaznamenávania, smerovania, ukladania a používania udalostí v systéme riadenom udalosťami. Hlavné architektonické vzory založené na udalostiach sú:

  • Publikovať/prihlásiť sa na odber (pub/sub): Producenti publikujú udalosti do kanála a viacerí spotrebitelia sa prihlásia na odber a automaticky reagujú.
  • Prenos udalostí: Producenti publikujú nepretržité toky udalostí sprostredkovateľovi a spotrebitelia môžu čítať, prehrávať alebo spracovávať tieto udalosti v ktoromkoľvek bode v prúde.
  • Oddelenie zodpovednosti za príkazový dotaz (CQRS): Operácie čítania a zápisu sú rozdelené do rôznych modelov, aby sa asynchrónne šírili aktualizácie.
  • Stanovenie zdroja odberu udalostí: Systémy ukladajú každú zmenu stavu ako nemennú udalosť v protokole iba v pripojení a potom znovu vytvoria aktuálny stav prehraním udalostí.
Aké sú výhody používania architektúry riadenej udalosťami?

Medzi kľúčové výhody využívania architektúry založenej na udalostiach patria:

  • Voľné prepojenie: Aplikácie fungujú nezávisle bez toho, aby vedeli o internách druhej strany, čo umožňuje jednoduchšie aktualizácie, integrácie a rozšírenia.
  • Škálovateľnosť: Noví výrobcovia a spotrebitelia môžu byť pridávaní hladko a pracovné zaťaženie sa škáluje v hybridných a viaccloudových prostrediach.
  • Odolnosť: Oddelené služby izolujú zlyhania, takže jeden komponent môže ísť dole bez vplyvu na celý systém.
  • Rýchlosť aodozva v reálnom čase: Asynchrónna komunikácia bez blokovania umožňuje systémom okamžite reagovať na obchodné udalosti a zvládať veľké objemy s nízkou latenciou.