Подійно-орієнтована архітектура (англ. Event-driven architecture; надалі EDA) — шаблон архітектури програмного забезпечення, який призначений для створення подій, їх виявлення, споживання і реагування на них.
Подія може бути визначена як значна зміна . Наприклад, коли споживач купує автомобіль, стан автомобіля змінюється з «на продаж» до «продано». Архітектура системи дилера автомобілів може трактувати цю зміну стану як подію, поява якої може стати відомою іншим застосункам даної архітектури.
З формальної точки зору, те, що виробляється, публікується, поширюється, виявляється і споживається (як правило, асинхронно) є повідомленням, яке називають сповіщенням про подію (або (нотифікацією)), а не самою подією, яка є зміною стану, що викликає появу повідомлення.
Події не подорожують, вони просто відбуваються. Проте термін подія часто використовується метонімічно для позначення самого нотифікаційного повідомлення, що може призвести до певної плутанини.
Цей архітектурний шаблон може застосовуватися при проектуванні і реалізації застосунків і систем, які передають події між слабкозв'язаними компонентами програмного забезпечення і сервісами (службами).
Подійно-орієнтована система як правило складається з емітерів подій (або агентів) і споживачів подій (або стоків). Стоки несуть відповідальність за здійснення реагування на появу події. Реакція не завжди може бути повністю забезпечена самим стоком. Наприклад, стік, може бути відповідальним лише за фільтрацію, трансформацію і відправку події до іншого компонента або він може забезпечити повністю самостійну реакцію на таку подію. Перша категорія стоків може бути заснована на традиційних компонентах, таких як проміжне програмне забезпечення, орієнтоване на обробку повідомлень (англ. message oriented middleware, MOM), в той час, як друга категорія стоків (самостійна реакція в режимі онлайн) може вимагати більш придатної платформи (фреймворку) для виконання транзакцій.
Розробка застосунків і систем в подійно-орієнтованій архітектурі дозволяє їм бути сконструйованими способом, який більш відповідає вимогам до їх створення, оскільки такі системи в більшій мірі пристосовуються до непередбачуваних і асинхронних середовищ.
Подійно-орієнтована архітектура (EDA) може доповнювати сервісно-орієнтовану архітектуру (SOA), оскільки сервіси (служби) можуть бути активовані тригерами, які ініціюються при настанні подій.
Ця парадигма особливо корисна, коли стік не забезпечує власного виконання будь-яких дій.
Обчислювальна техніка та сенсорні пристрої (сенсори, датчики, контролери) можуть виявляти зміни стану об'єктів або умов і створювати події, які потім можуть бути оброблені сервісом (службою) або системою.
Структура події
Подія може складатися з двох частин: заголовка події та тіла події. Заголовок події може включати в себе інформацію таку як, наприклад, назва події, часова мітка події і тип події. Тіло події — це частина, яка описує факт, що стався в дійсності. Тіло події не слід плутати з шаблоном або логікою, яка може бути застосована як реакція на саму події.
Рівні потоку подій
Архітектура, керована подіями, складається з чотирьох логічних рівнів (шарів). Вона починається з виявлення факту, його технічного подання у формі події і закінчується непустою множиною реакцій на цю подію.
Генератор подій
Першим логічним шаром є генератор подій, який виявляє факт і представляє цей факт подією. Оскільки фактом може бути практично все, що може бути сприйнято, то ним може бути і генератор подій. Наприклад, генератором може бути клієнт електронної пошти, система електронної комерції або певний тип датчика. Перетворення різних даних, отриманих від датчиків, в єдину стандартизовану форму даних, які можуть бути оцінені, є основною проблемою при розробці та реалізації цього шару. Однак, враховуючи, що подія є строго декларативною, можна легко застосовувати будь-які операції трансформації, тим самим усуваючи необхідність забезпечення високого рівня стандартизації.
Канал подій
Канал подій — це механізм, через який інформація від генератора подій передається до обробника подій (event engine) або стоку. Це може бути з'єднання TCP/IP або вхідний файл будь-якого типу (простий текст, формат XML, e-mail тощо). В один і той же час може бути відкрито кілька каналів подій. Як правило, оскільки обробник подій повинен працювати в режимі, наближеному до реального часу, канали подій зчитуються асинхронно. Події зберігаються в черзі, очікуючи наступної обробки механізмом обробки подій.
Механізм обробки подій
Механізм обробки подій (event processing engine) є місцем, де подія ідентифікується і вибирається відповідна реакція на нього, яка потім виконується. Це також може призвести до породження ряду тверджень. Якщо подія, яка надійшла до механізму обробки подій, є наприклад такою «Запаси продукту ID досягли нижнього допустимого рівня», це може ініціювати, наприклад, такі реакції як «Замовити продукт ID» і «Сповістити персонал».
Наступна подійно-орієнтована дія (післядія)
Щодо того, як можуть проявлятися наслідки події, слід відмітити, що вони можуть проявитись багатьма різними способами і у різноманітних формах (наприклад, повідомлення електронної пошти, надіслане комусь, або застосунок, що виводить деяке попередження на екран). Залежно від рівня автоматизації, який забезпечується стоком (механізмом обробки подій), ці дії можуть виявитись зайвими.
Стилі обробки подій
Є три основні стилі обробки подій: простий, потоковий і складний. Часто ці три стилі використовуються спільно у розвинутій подійно-орієнтованій архітектурі.
Проста обробка подій
Проста обробка подій стосується подій, які безпосередньо належать до специфічних вимірних змін умов. У випадку простої обробки подій, мають справу з появою відомих подій, що ініціюють післядію (післядії). Проста обробка подій зазвичай використовується для управління потоком робіт в реальному часі, скорочуючи тим самим час затримки і вартість робіт.
Наприклад, прості події можуть створюватись (породжуватись) датчиком, що виявляє зміну тиску в шині або температуру навколишнього середовища.
Обробка потоку подій
При обробці потоку подій (ESP — англ. event stream processing) відбуваються як звичайні, так і відомі події. Звичайні події (заявки, передачі RFID) перевіряються на те, чи є вони відомими, і передаються інформаційним передплатникам. Обробка потоку подій зазвичай використовується для управління потоком інформації в реальному часі і на рівні підприємства, що дозволяє своєчасно приймати рішення.
Обробка складних подій
Обробка складних подій ([en]) дозволяє за шаблонами простих і звичайних подій проводити аналіз того, чи сталася складна подія. Обробка складних подій полягає в оцінюванні взаємного впливу подій і в наступному виконанні дій. При цьому, типи подій (відомих або звичайних) можуть перетинатись, а події можуть виникати протягом тривалого періоду часу.
Кореляція подій може бути причинною, тимчасовою або просторовою. CEP вимагає використання складних інтерпретаторів подій, визначення і підбору шаблонів подій, а також відповідних кореляційних методів. Обробка складних подій зазвичай використовується для виявлення і реагування на аномальну поведінку, загрози і можливості у бізнесі.
Екстремальне слабке зв'язування і добра розподіленість
Подійно-орієнтована архітектура є екстремально слабко зв'язаною і добре розподіленою. Найкраща розподіленість цієї архітектури обумовлена тим, що подією може бути майже все, що завгодно, і подія може існувати майже скрізь, де завгодно.
Архітектура є екстремально слабко зв'язаною, оскільки подія сама по собі не знає про наслідки свого виникнення, тобто якщо у нас є охоронна система, що записує інформацію при відкритті зовнішніх дверей, то двері самі по собі не знають, що охоронна система додасть інформацію про відкриття дверей відразу, як тільки вони будуть відчинені.
Подійно-орієнтовані архітектури мають слабкий зв'язок у просторі, часі і синхронізації, чим забезпечують масштабовану інфраструктуру для обміну інформацією і розподілених потоків робіт (workflow). В той самий час, подійні архітектури є тісно зв'язаними через підписку на події і шаблони подій з семантикою базової схеми подій і їх значень.
Високий рівень семантичної неоднорідності подій у масштабних і відкритих проектах, таких як «розумні міста» або сенсорні мережі типу [en]», що застосовуються для моніторингу навколишнього середовища, ускладнює розвиток і підтримку подійно-орієнтованих систем. Усунення цих проблем є активною областю досліджень в галузі застосування методів наближеного семантичного зіставлення подій.
Реалізації і приклади
Java Swing
Прикладний програмний інтерфейс (API) бібліотеки Java Swing заснований на подійно-орієнтованій архітектурі.
Це особливо добре узгоджується з мотивацією Swing надавати необхідні компоненти і функціональність, що відносяться до інтерфейсу користувача. Інтерфейс використовує домовленості про найменування (наприклад, «ActionListener» і «ActionEvent») для встановлення зв'язків і організації відносин між подіями. Клас, який потребує сповіщення про певну подію, просто реалізує відповідного слухача, перевизначає успадковані методи і додається до об'єкта, який породжує подію. Нижче приведено досить простий приклад:
public class FooPanel extends JPanel implements ActionListener { public FooPanel() { super(); JButton btn = new JButton("Click Me!"); btn.addActionListener(this); this.add(btn); } @Override public void actionPerformed(ActionEvent ae) { System.out.println("Button has been clicked!"); } }
Як альтернативу можна навести приклад реалізації з додаванням слухача в об'єкт анонімного класу.
public class FooPanel extends JPanel { public FooPanel() { super(); JButton btn = new JButton("Click Me!"); btn.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent ae) { System.out.println("Button has been clicked!"); } }); } }
Див. також
Статті
- Стаття про відмінності між EDA і SOA: How EDA extends SOA and why it is important [ 8 березня 2021 у Wayback Machine.] by Jack van Hoof. (англ.)
- Реальний приклад потоку бізнес-подій в SOA: SOA, EDA, and CEP — a winning combo [ 7 листопада 2013 у Wayback Machine.] by Udi Dahan. (англ.)
Примітки
- K. Mani Chandy Event-Driven Applications: Costs, Benefits and Design Approaches, California Institute of Technology, 2006
- Jeff Hanson, Event-driven services in SOA [ 2 червня 2013 у Wayback Machine.],Javaworld, January 31, 2005
- Carol Sliwa Event-driven architecture poised for wide adoption [ 20 березня 2017 у Wayback Machine.], Computerworld, May 12, 2003
- Brenda M. Michelson, Event-Driven Architecture Overview, Patricia Seybold Group, February 2, 2006
- Hasan, Souleiman, Sean O'Riain, and Edward Curry. 2012. «Approximate Semantic Matching of Heterogeneous Events.» [ 11 травня 2013 у Wayback Machine.] In 6th ACM International Conference on Distributed Event-Based Systems (DEBS 2012), 252—263. Berlin, Germany: ACM. «DOI».
Посилання
- Industry website on Event Processing [ 8 березня 2022 у Wayback Machine.] (англ.)
- Website for the Event Processing Technical Society [ 4 вересня 2019 у Wayback Machine.] (англ.)
- 5th Anniversary Edition: Event-Driven Architecture Overview, Brenda M. Michelson [ 7 листопада 2013 у Wayback Machine.] (англ.)
- Complex Event Processing and Service Oriented Architecture [ 30 жовтня 2012 у Wayback Machine.] (англ.)
- How EDA extends SOA and why it is important [ 8 березня 2021 у Wayback Machine.] by Jack van Hoof (англ.)
- Романов А. В. Событийно-управляемая архитектура (EDA) как эффективное развитие сервис-ориентированной архитектуры (SOA)[недоступне посилання з липня 2019](рос.)
Вікіпедія, Українська, Україна, книга, книги, бібліотека, стаття, читати, завантажити, безкоштовно, безкоштовно завантажити, mp3, відео, mp4, 3gp, jpg, jpeg, gif, png, малюнок, музика, пісня, фільм, книга, гра, ігри, мобільний, телефон, android, ios, apple, мобільний телефон, samsung, iphone, xiomi, xiaomi, redmi, honor, oppo, nokia, sonya, mi, ПК, web, Інтернет
Podijno oriyentovana arhitektura angl Event driven architecture nadali EDA shablon arhitekturi programnogo zabezpechennya yakij priznachenij dlya stvorennya podij yih viyavlennya spozhivannya i reaguvannya na nih Podiya mozhe buti viznachena yak znachna zmina Napriklad koli spozhivach kupuye avtomobil stan avtomobilya zminyuyetsya z na prodazh do prodano Arhitektura sistemi dilera avtomobiliv mozhe traktuvati cyu zminu stanu yak podiyu poyava yakoyi mozhe stati vidomoyu inshim zastosunkam danoyi arhitekturi Z formalnoyi tochki zoru te sho viroblyayetsya publikuyetsya poshiryuyetsya viyavlyayetsya i spozhivayetsya yak pravilo asinhronno ye povidomlennyam yake nazivayut spovishennyam pro podiyu abo notifikaciyeyu a ne samoyu podiyeyu yaka ye zminoyu stanu sho viklikaye poyavu povidomlennya Podiyi ne podorozhuyut voni prosto vidbuvayutsya Prote termin podiya chasto vikoristovuyetsya metonimichno dlya poznachennya samogo notifikacijnogo povidomlennya sho mozhe prizvesti do pevnoyi plutanini Cej arhitekturnij shablon mozhe zastosovuvatisya pri proektuvanni i realizaciyi zastosunkiv i sistem yaki peredayut podiyi mizh slabkozv yazanimi komponentami programnogo zabezpechennya i servisami sluzhbami Podijno oriyentovana sistema yak pravilo skladayetsya z emiteriv podij abo agentiv i spozhivachiv podij abo stokiv Stoki nesut vidpovidalnist za zdijsnennya reaguvannya na poyavu podiyi Reakciya ne zavzhdi mozhe buti povnistyu zabezpechena samim stokom Napriklad stik mozhe buti vidpovidalnim lishe za filtraciyu transformaciyu i vidpravku podiyi do inshogo komponenta abo vin mozhe zabezpechiti povnistyu samostijnu reakciyu na taku podiyu Persha kategoriya stokiv mozhe buti zasnovana na tradicijnih komponentah takih yak promizhne programne zabezpechennya oriyentovane na obrobku povidomlen angl message oriented middleware MOM v toj chas yak druga kategoriya stokiv samostijna reakciya v rezhimi onlajn mozhe vimagati bilsh pridatnoyi platformi frejmvorku dlya vikonannya tranzakcij Rozrobka zastosunkiv i sistem v podijno oriyentovanij arhitekturi dozvolyaye yim buti skonstrujovanimi sposobom yakij bilsh vidpovidaye vimogam do yih stvorennya oskilki taki sistemi v bilshij miri pristosovuyutsya do neperedbachuvanih i asinhronnih seredovish Podijno oriyentovana arhitektura EDA mozhe dopovnyuvati servisno oriyentovanu arhitekturu SOA oskilki servisi sluzhbi mozhut buti aktivovani trigerami yaki iniciyuyutsya pri nastanni podij Cya paradigma osoblivo korisna koli stik ne zabezpechuye vlasnogo vikonannya bud yakih dij Obchislyuvalna tehnika ta sensorni pristroyi sensori datchiki kontroleri mozhut viyavlyati zmini stanu ob yektiv abo umov i stvoryuvati podiyi yaki potim mozhut buti obrobleni servisom sluzhboyu abo sistemoyu Struktura podiyiPodiya mozhe skladatisya z dvoh chastin zagolovka podiyi ta tila podiyi Zagolovok podiyi mozhe vklyuchati v sebe informaciyu taku yak napriklad nazva podiyi chasova mitka podiyi i tip podiyi Tilo podiyi ce chastina yaka opisuye fakt sho stavsya v dijsnosti Tilo podiyi ne slid plutati z shablonom abo logikoyu yaka mozhe buti zastosovana yak reakciya na samu podiyi Rivni potoku podijArhitektura kerovana podiyami skladayetsya z chotiroh logichnih rivniv shariv Vona pochinayetsya z viyavlennya faktu jogo tehnichnogo podannya u formi podiyi i zakinchuyetsya nepustoyu mnozhinoyu reakcij na cyu podiyu Generator podij Pershim logichnim sharom ye generator podij yakij viyavlyaye fakt i predstavlyaye cej fakt podiyeyu Oskilki faktom mozhe buti praktichno vse sho mozhe buti sprijnyato to nim mozhe buti i generator podij Napriklad generatorom mozhe buti kliyent elektronnoyi poshti sistema elektronnoyi komerciyi abo pevnij tip datchika Peretvorennya riznih danih otrimanih vid datchikiv v yedinu standartizovanu formu danih yaki mozhut buti ocineni ye osnovnoyu problemoyu pri rozrobci ta realizaciyi cogo sharu Odnak vrahovuyuchi sho podiya ye strogo deklarativnoyu mozhna legko zastosovuvati bud yaki operaciyi transformaciyi tim samim usuvayuchi neobhidnist zabezpechennya visokogo rivnya standartizaciyi Kanal podij Kanal podij ce mehanizm cherez yakij informaciya vid generatora podij peredayetsya do obrobnika podij event engine abo stoku Ce mozhe buti z yednannya TCP IP abo vhidnij fajl bud yakogo tipu prostij tekst format XML e mail tosho V odin i toj zhe chas mozhe buti vidkrito kilka kanaliv podij Yak pravilo oskilki obrobnik podij povinen pracyuvati v rezhimi nablizhenomu do realnogo chasu kanali podij zchituyutsya asinhronno Podiyi zberigayutsya v cherzi ochikuyuchi nastupnoyi obrobki mehanizmom obrobki podij Mehanizm obrobki podij Mehanizm obrobki podij event processing engine ye miscem de podiya identifikuyetsya i vibirayetsya vidpovidna reakciya na nogo yaka potim vikonuyetsya Ce takozh mozhe prizvesti do porodzhennya ryadu tverdzhen Yaksho podiya yaka nadijshla do mehanizmu obrobki podij ye napriklad takoyu Zapasi produktu ID dosyagli nizhnogo dopustimogo rivnya ce mozhe iniciyuvati napriklad taki reakciyi yak Zamoviti produkt ID i Spovistiti personal Nastupna podijno oriyentovana diya pislyadiya Shodo togo yak mozhut proyavlyatisya naslidki podiyi slid vidmititi sho voni mozhut proyavitis bagatma riznimi sposobami i u riznomanitnih formah napriklad povidomlennya elektronnoyi poshti nadislane komus abo zastosunok sho vivodit deyake poperedzhennya na ekran Zalezhno vid rivnya avtomatizaciyi yakij zabezpechuyetsya stokom mehanizmom obrobki podij ci diyi mozhut viyavitis zajvimi Stili obrobki podijYe tri osnovni stili obrobki podij prostij potokovij i skladnij Chasto ci tri stili vikoristovuyutsya spilno u rozvinutij podijno oriyentovanij arhitekturi Prosta obrobka podij Prosta obrobka podij stosuyetsya podij yaki bezposeredno nalezhat do specifichnih vimirnih zmin umov U vipadku prostoyi obrobki podij mayut spravu z poyavoyu vidomih podij sho iniciyuyut pislyadiyu pislyadiyi Prosta obrobka podij zazvichaj vikoristovuyetsya dlya upravlinnya potokom robit v realnomu chasi skorochuyuchi tim samim chas zatrimki i vartist robit Napriklad prosti podiyi mozhut stvoryuvatis porodzhuvatis datchikom sho viyavlyaye zminu tisku v shini abo temperaturu navkolishnogo seredovisha Obrobka potoku podij Pri obrobci potoku podij ESP angl event stream processing vidbuvayutsya yak zvichajni tak i vidomi podiyi Zvichajni podiyi zayavki peredachi RFID pereviryayutsya na te chi ye voni vidomimi i peredayutsya informacijnim peredplatnikam Obrobka potoku podij zazvichaj vikoristovuyetsya dlya upravlinnya potokom informaciyi v realnomu chasi i na rivni pidpriyemstva sho dozvolyaye svoyechasno prijmati rishennya Obrobka skladnih podij Obrobka skladnih podij en dozvolyaye za shablonami prostih i zvichajnih podij provoditi analiz togo chi stalasya skladna podiya Obrobka skladnih podij polyagaye v ocinyuvanni vzayemnogo vplivu podij i v nastupnomu vikonanni dij Pri comu tipi podij vidomih abo zvichajnih mozhut peretinatis a podiyi mozhut vinikati protyagom trivalogo periodu chasu Korelyaciya podij mozhe buti prichinnoyu timchasovoyu abo prostorovoyu CEP vimagaye vikoristannya skladnih interpretatoriv podij viznachennya i pidboru shabloniv podij a takozh vidpovidnih korelyacijnih metodiv Obrobka skladnih podij zazvichaj vikoristovuyetsya dlya viyavlennya i reaguvannya na anomalnu povedinku zagrozi i mozhlivosti u biznesi Ekstremalne slabke zv yazuvannya i dobra rozpodilenistPodijno oriyentovana arhitektura ye ekstremalno slabko zv yazanoyu i dobre rozpodilenoyu Najkrasha rozpodilenist ciyeyi arhitekturi obumovlena tim sho podiyeyu mozhe buti majzhe vse sho zavgodno i podiya mozhe isnuvati majzhe skriz de zavgodno Arhitektura ye ekstremalno slabko zv yazanoyu oskilki podiya sama po sobi ne znaye pro naslidki svogo viniknennya tobto yaksho u nas ye ohoronna sistema sho zapisuye informaciyu pri vidkritti zovnishnih dverej to dveri sami po sobi ne znayut sho ohoronna sistema dodast informaciyu pro vidkrittya dverej vidrazu yak tilki voni budut vidchineni Podijno oriyentovani arhitekturi mayut slabkij zv yazok u prostori chasi i sinhronizaciyi chim zabezpechuyut masshtabovanu infrastrukturu dlya obminu informaciyeyu i rozpodilenih potokiv robit workflow V toj samij chas podijni arhitekturi ye tisno zv yazanimi cherez pidpisku na podiyi i shabloni podij z semantikoyu bazovoyi shemi podij i yih znachen Visokij riven semantichnoyi neodnoridnosti podij u masshtabnih i vidkritih proektah takih yak rozumni mista abo sensorni merezhi tipu en sho zastosovuyutsya dlya monitoringu navkolishnogo seredovisha uskladnyuye rozvitok i pidtrimku podijno oriyentovanih sistem Usunennya cih problem ye aktivnoyu oblastyu doslidzhen v galuzi zastosuvannya metodiv nablizhenogo semantichnogo zistavlennya podij Realizaciyi i prikladiJava Swing Prikladnij programnij interfejs API biblioteki Java Swing zasnovanij na podijno oriyentovanij arhitekturi Ce osoblivo dobre uzgodzhuyetsya z motivaciyeyu Swing nadavati neobhidni komponenti i funkcionalnist sho vidnosyatsya do interfejsu koristuvacha Interfejs vikoristovuye domovlenosti pro najmenuvannya napriklad ActionListener i ActionEvent dlya vstanovlennya zv yazkiv i organizaciyi vidnosin mizh podiyami Klas yakij potrebuye spovishennya pro pevnu podiyu prosto realizuye vidpovidnogo sluhacha pereviznachaye uspadkovani metodi i dodayetsya do ob yekta yakij porodzhuye podiyu Nizhche privedeno dosit prostij priklad public class FooPanel extends JPanel implements ActionListener public FooPanel super JButton btn new JButton Click Me btn addActionListener this this add btn Override public void actionPerformed ActionEvent ae System out println Button has been clicked Yak alternativu mozhna navesti priklad realizaciyi z dodavannyam sluhacha v ob yekt anonimnogo klasu public class FooPanel extends JPanel public FooPanel super JButton btn new JButton Click Me btn addActionListener new ActionListener public void actionPerformed ActionEvent ae System out println Button has been clicked Div takozhPodijno oriyentovane programuvannya Bagatoetapna podijno oriyentovana arhitektura SEDA Servisno oriyentovana arhitektura SOA StattiStattya pro vidminnosti mizh EDA i SOA How EDA extends SOA and why it is important 8 bereznya 2021 u Wayback Machine by Jack van Hoof angl Realnij priklad potoku biznes podij v SOA SOA EDA and CEP a winning combo 7 listopada 2013 u Wayback Machine by Udi Dahan angl PrimitkiK Mani Chandy Event Driven Applications Costs Benefits and Design Approaches California Institute of Technology 2006 Jeff Hanson Event driven services in SOA 2 chervnya 2013 u Wayback Machine Javaworld January 31 2005 Carol Sliwa Event driven architecture poised for wide adoption 20 bereznya 2017 u Wayback Machine Computerworld May 12 2003 Brenda M Michelson Event Driven Architecture Overview Patricia Seybold Group February 2 2006 Hasan Souleiman Sean O Riain and Edward Curry 2012 Approximate Semantic Matching of Heterogeneous Events 11 travnya 2013 u Wayback Machine In 6th ACM International Conference on Distributed Event Based Systems DEBS 2012 252 263 Berlin Germany ACM DOI PosilannyaIndustry website on Event Processing 8 bereznya 2022 u Wayback Machine angl Website for the Event Processing Technical Society 4 veresnya 2019 u Wayback Machine angl 5th Anniversary Edition Event Driven Architecture Overview Brenda M Michelson 7 listopada 2013 u Wayback Machine angl Complex Event Processing and Service Oriented Architecture 30 zhovtnya 2012 u Wayback Machine angl How EDA extends SOA and why it is important 8 bereznya 2021 u Wayback Machine by Jack van Hoof angl Romanov A V Sobytijno upravlyaemaya arhitektura EDA kak effektivnoe razvitie servis orientirovannoj arhitektury SOA nedostupne posilannya z lipnya 2019 ros