()은 4개의 주요 컴포넌트로 구성되어져 있는데, 이들 컴포넌트는 이름에서 예상되듯 이벤트를 다루는 컴포넌트 입니다.

아래의 그림에서 특정 을 통해 메시지가 메시지 버스를 통해 전달 되면, 리스너(listener)는 등록(subscribe)한 특정 에 해당하는 메시지를 이벤트로 받는 구조입니다. 이 이벤트를 받는 것을 영어로 Event Notification이라고도 합니다.

Event-bus pattern은 Push Notification Service, 안드로이드 앱 개발에 주로 응용되는 아키텍쳐

()/ 앱 개발이 이 (Architectural pattern)에 해당하며, 도 이벤트-버스(Event-bus) (Architectural pattern)에 해당된다고 할 수 있습니다.

()은 고도로 분산화된 애플리케이션에 효과적이라고 할 수 있습니다. 반면, 모든 메시지가 동일한 를 통해 전달되기 때문에 확장성 문제가 발생할 수 있다는 단점이 있습니다.



facebook posting twit

  • 아틀라시안 뱀부(Atlassian Bamboo)를 활용한 CI(Continuous Integration) 환경 구축
  • 아키텍쳐 패턴이란 – 소프트웨어 디자인 패턴
  • Interpreter pattern은 SQL 또는 통신프로토콜을 기술하는 언어 구현시 주로 이용되는 아키텍쳐
  • Blackboard pattern은 오늘날 NLU(Natural Language Understanding)이나 차량인식 등에 응용되는 아키텍쳐
  • MVC(Model-view-controller) pattern은 Django, Rails와 같은 웹 어플리케이션 개발에 주로 응용되는 아키텍쳐
  • Peer-to-peer pattern은 BitTorrent와 같이 파일공유 솔루션이나 P2PTV, PDTP와 같은 멀티미디어 프로토콜에 주로 이용
  • Broker pattern은 Apache ActiveMQ, Apache Kafka, RabbitMQ 등 메시지 미들웨어 같은 아키텍쳐에 주로 이용
  • Pipe-filter pattern은 컴파일러와 같이 통해 연속되는 필터링 기법을 통한 분석을 하는 아키텍쳐에 주로 이용
  • Master-slave pattern은 장애 대응을 위한 Database 복제 등 병렬처리 및 Disaster Recovery 대응 로직에 주로 이용
  • Client-server pattern은 TCP/IP를 통해 데이터를 주고 받는 이메일, 웹하드 등이 주로 이용하는 아키텍쳐
  • Leave a Reply