Багатоетапна подійно-орієнтована архітектура
Багатоетапна подійно-орієнтована архітектура (англ. staged event-driven architecture; надалі SEDA) - підхід до архітектури програмного забезпечення, за якого здійснюється декомпозиція складної подійно-орієнтованої програми на кілька етапів, з'єднаних у черги.[1]
Дозволяє уникнути високих накладних витрат, пов'язаних з потоко-орієнтованими паралельними моделями і відокремити події і планування потоків від логіки прикладної програми. Здійснення вхідного контролю для кожної черги створює найкращі умови для завантаження сервісу завдяки запобіганню перевантаження ресурсів в умовах, коли попит на них перевищує можливості сервісу.
SEDA використовує динамічне управління для автоматичної настройки параметрів виконання програми (зокрема, планування параметрів на кожному етапі) і керування завантаженням (наприклад, виконання адаптивного розвантаження). Декомпозиція сервісів на ряд етапів також дозволяє забезпечити модульність і можливість повторного використання коду, а також розробку засобів налагодження програм для складних подійно-орієнтованих застосунків.
- ↑ SEDA: An Architecture for Highly Concurrent Server Applications. http://www.genmaint.com/: Genmaint.com. Архів оригіналу за 11 липня 2011. Процитовано 17 березня 2011.
SEDA is an acronym for staged event-driven architecture, and decomposes a complex, event-driven application into a set of stages connected by queues.
{{cite web}}
: Недійсний|deadurl=404
(довідка)(англ.)
- Welsh, Matt; Culler, David; Brewer, Eric (December 2001), "SEDA: an architecture for well-conditioned, scalable internet services" in "SOSP '01 Proceedings of the eighteenth ACM symposium on Operating systems principles" (вид. 1st), Association for Computing Machinery, с. 230—243, ISBN 1-58113-389-8 (англ.)
- Никонов, Э.; Фролко, А. (2008), "Повышение отказоустойчивости многоэтапных событийно-управляемых систем анализа и обработки информации в сценариях стрессовой нагрузки", «Информационные Ресурсы России», №5, 2008 (рос.)
- Подійно-орієнтована архітектура (EDA)
- Подійно-орієнтоване програмування
- Сервісно-орієнтована архітектура (SOA)
- Camel SEDA [Архівовано 25 вересня 2014 у Wayback Machine.] component provides asynchronous SEDA behavior. (англ.)
- Apache ServiceMix [Архівовано 30 травня 2013 у Wayback Machine.] provides a Java SEDA wrapper, combining it with related message architectures (JMS, JCA & straight-through flow). (англ.)
- Criticism about how SEDA premises (threads are expensive) are no longer valid (англ.)
- JCyclone [Архівовано 9 жовтня 2012 у Wayback Machine.]: Java open source implementation of SEDA (англ.)
- Mule ESB [Архівовано 2 червня 2013 у Wayback Machine.] is another open-source Java implementation (англ.)
- SEDA: An Architecture for Highly Concurrent Server Applications describing the PhD thesis by Matt Welsh from Harvard University (англ.)
- A Retrospective on SEDA [Архівовано 19 січня 2014 у Wayback Machine.] by Matt Welsh, July 26, 2010 (англ.)