정보관리기술/소프트웨어공학

EDA(Event Driven Architecture)

아이티신비 2024. 1. 25. 10:00

문제5) EDA(Event Driven Architecture) 의 토폴로지 구성요소인 중재자 토폴로지(Mediator Topology), 브로커 토폴로지(Broke Topology) 를 비교 설명하시오

 

답)

 

 

1. 분산 비동기 처리 아키텍처, EDA(Event Driven Architecture) 의 개요

가. EDA(Event Driven Architecture)의 정의

  • 분산된 시스템 간에 이벤트를 생성, 발생하고 발행된 이벤트를 필요로 하는 수신자에게 전송, 필요에 따라 처리하는 시스템 아키텍쳐

 

나. EDA(Event Driven Architecture)의 특징

비동기식
  • 이벤트 메시징에 비동기 분산 처리
이벤트
  • 분산 시스템간 메시징 이벤트 기반
N:N 통신
  • 다수의 Publisher 와 다수의 Subscriber 통신

 

2. EDA(Event Driven Architecture) 의 구성도 및 구성요소

가. EDA의 구성도

 

나. EDA의 구성요소

구분
핵심기술
설명
Event Generator
  • Publisher
  • Producer
  • Creator
  • 표준화된 형식의 이벤트를 생성
  • 생성된 이벤트는 Event Channel 로 전송
Event Channel
  • Bus
  • Event Generator 에서 Event Processing Engine 으로 수집된 데이터를 전파
Event Processing Engine
  • Consumer, Processor
  • 수신한 이벤트를 식별/처리하는 역할
  • 처리 결과에 따라 새로운 이벤트를 생성

 

3. 중재자 토폴로지(Mediator Topology), 브로커(Broker Topology) 비교

가. 아키텍처 중재자 토폴로지(Mediator Topology), 브로커 토폴로지(Broke Topology) 비교

구분
중재자 토폴로지
브로커 토폴로지
개념도
개념
여러 단계가 있고 이벤트를 처리하기 위해 일정 레벨의 오케스트레이션이 필요한 이벤트 관리 토폴로지
여러 단계가 필요 없는 큐나 중재자 없이 이벤트와 응답을 직접적으로 연관시키는 이벤트 관리 토폴로지

 

나. 상세 중재자 토폴로지(Mediator Topology), 브로커 토폴로지(Broker Topology) 비교

구분
핵심 기술
설명
사례
주식거래(거래할당 → 수수료 계산 → 브로커 전달)
 
구성요소
  • 이벤트 큐
  • 이벤트 중재자
  • 이벤트 채널
  • 이벤트 프로세서
  • 이벤트 채널
  • 이벤트 프로세서
솔루션
  • Spring Integration
  • Apache Camel
  • Mule ESB
  • ActiveMQ
  • HornetQ
사례
  • 주식거래
  • 시스템 상태 모니터링 로그
공통점
  • Multicast / 실시간전송 / 비동기 통신
  • 간편한 배포
  • 손쉬운 테스트
  • 전반적인 민첩성
  • 뛰어난 성능과 확장성
  • 개발의 용이성

 

4. EDA(Event DrivenArchitecture)와 SOA(Service Oriented Architecture) 비교

구분
EDA
SOA
단위
이벤트
서비스
연결
N:N
1:1
제어
비동기
순차

 


 

공감과 댓글은 아이티신비에게 큰 힘이 됩니다.

블로그 글이 유용하다면 블로그를 구독해주세요.♥