소프트웨어 아키텍처 - 23(Message Broker Architecture Style)

박승현·2023년 10월 16일
0

아키텍처

목록 보기
23/30
post-thumbnail

Message Broker Architecture Style

  • 메시지는 애플리케이션 간에 전송되는 XML 문서와 같은 형식화된 정보
  • 메시지 브로커는 메시지 지향 분산 시스템에서 메시지 중심 미들웨어(MOM) 서버
  • 메시지 내용을 기반으로 발신자에서 수신자로 메시지를 라우팅
  • 브로커는 메시지의 형식을 변경하여 발신자와 수신자의 다른 요구 사항을 충족
  • 브로커는 메시지를 수정, 삽입, 병합등으로 메시지를 변환할 수도 있음
  • 메시지 분배를 게시 및 구독을 통해 처리
  • 메시지 브로커 소프트웨어
    • Amazon Web Services (AWS) Amazon MQ
    • Apache ActiveMQ, Kafka
    • Eclipse Mosquitto MQTT Broker
    • WebSphere Message Broker, IBM MQSeries, Sun JMS, JBoss Messaging

Message Broker - Solution

  • 송신자와 수신자 사이에 중개 큐를 도입
  • 큐는 메시지를 영구적으로 저장하고 다른 큐와 렵력하여 메시지 라우팅
  • 메시지는 송신자에서 수신자로 전송되는 객체
  • 송신자와 수신자가 메시지를 보내고 받기 위한 메시지 API가 제공됨

Dynamics


Apache Kafka & RabbitMQ

  • Apache Kafka
    • 분산 이벤트 저장소 및 스트림 처리 플랫폼, 자바 스칼라로 작성
  • RabbitMQ
    • 오픈 소스 메시지 브로커 소프트웨어

메시지 브로커 장,단점

  • 장점
    • 재사용성 및 유지관리
      • 클라이언트와 서버의 느슨한 결합
    • 비동기 메시지 처리
      • 작업 간의 효율적인 분산을 허용, 대량의 메시지 처리에 효율적
    • 유연성
      • 호출 지향 또는 문서 지향 메시징과 같이 여러 유형의 메시징을 지원하며, 메시지의 헤더 및 본문을 특정 목적에 맞게 변경할 수 있음
  • 단점
    • 오버헤드, 간접성 복잡성 및 디버깅, 테스트 어려움
profile
KMU SW

0개의 댓글