Topic

중재자 토폴로지 vs 브로커 토폴로지

JackerLab 2025. 3. 20. 15:30
728x90
반응형

개요

중재자 토폴로지(Mediator Topology)와 브로커 토폴로지(Broker Topology)는 분산 시스템에서 서비스 간의 통신을 관리하는 두 가지 대표적인 메시지 전달 아키텍처이다. 중재자 토폴로지는 중앙 집중형 구조를 사용하여 서비스 간 조정을 담당하며, 브로커 토폴로지는 서비스 간 직접적인 메시지 전달을 관리하는 분산형 구조를 갖는다. 본 글에서는 두 가지 아키텍처의 개념, 구성 요소, 장단점, 활용 사례를 비교 분석한다.


1. 중재자 토폴로지(Mediator Topology)란?

중재자 토폴로지는 서비스 간 통신을 중앙 집중형 컴포넌트(중재자, Mediator)가 관리하는 아키텍처이다. 이는 서비스 간의 복잡한 상호작용을 단순화하고, 중앙에서 트랜잭션을 조정하는 데 유리하다.

중재자 토폴로지는 서비스 간 의존성을 줄이고, 비즈니스 로직을 중앙에서 관리하는 방식이다.

1.1 중재자 토폴로지의 동작 방식

  1. 서비스 A가 중재자에게 요청을 보냄
  2. 중재자가 요청을 분석하고 적절한 서비스 B, C 등에 전달
  3. 서비스 B, C가 응답을 중재자로 반환
  4. 중재자가 결과를 서비스 A에게 전달

1.2 중재자 토폴로지의 주요 구성 요소

구성 요소 설명
중재자(Mediator) 모든 서비스 간의 메시지 흐름을 관리하는 중앙 허브
서비스(Services) 중재자의 요청을 받아 비즈니스 로직을 수행하는 개별 서비스
이벤트 버스(Event Bus) 이벤트 기반으로 데이터를 처리하는 메시징 시스템 (예: Apache Kafka, RabbitMQ)

중재자 토폴로지는 프로세스 조정이 필요한 복잡한 비즈니스 로직을 관리하는 데 적합하다.


2. 브로커 토폴로지(Broker Topology)란?

브로커 토폴로지는 중앙 집중형 중재자 없이 서비스 간 직접적인 메시지 교환을 가능하게 하는 분산형 아키텍처이다. 브로커(Message Broker)가 메시지를 송신자와 수신자 간에 라우팅하는 역할을 수행한다.

브로커 토폴로지는 서비스 간 독립성을 보장하며, 확장성과 유연성이 뛰어난 방식이다.

2.1 브로커 토폴로지의 동작 방식

  1. 서비스 A가 브로커를 통해 메시지를 발행(Publish)
  2. 브로커가 해당 메시지를 적절한 서비스 B, C에 전달(Subscribe)
  3. 서비스 B, C가 메시지를 받아 비즈니스 로직 실행

2.2 브로커 토폴로지의 주요 구성 요소

구성 요소 설명
브로커(Broker) 메시지를 중개하여 서비스 간 연결을 관리하는 시스템 (예: Kafka, RabbitMQ)
서비스(Services) 메시지를 수신하고 처리하는 독립적인 서비스
이벤트 큐(Event Queue) 메시지가 저장되고, 소비자가 이를 구독(Subscribe)하여 처리

브로커 토폴로지는 고가용성 및 확장성이 중요한 시스템에 적합하다.


3. 중재자 토폴로지 vs 브로커 토폴로지 비교

두 가지 토폴로지는 서비스 간의 통신을 관리하는 방식이 다르며, 각각의 장점과 단점이 존재한다.

3.1 주요 차이점 비교

비교 항목 중재자 토폴로지 브로커 토폴로지
구조 중앙 집중형 분산형
서비스 간 의존성 중재자를 통해 간접적으로 연결 직접적인 메시지 전달 방식
확장성 중재자의 부하 증가로 인해 제한적 서비스 간 독립적으로 확장 가능
메시지 처리 방식 중재자가 프로세스 조정을 수행 브로커가 메시지 전달만 담당
장애 허용성 중재자가 장애 발생 시 전체 시스템 영향 개별 서비스 장애 시 다른 서비스에는 영향 없음
운영 복잡성 중앙 조정으로 관리 용이 서비스 간 직접 통신으로 조정이 필요함

중재자 토폴로지는 프로세스 조정이 필요한 시스템에, 브로커 토폴로지는 분산 확장이 필요한 환경에 적합하다.


4. 중재자 토폴로지 vs 브로커 토폴로지 활용 사례

4.1 중재자 토폴로지 활용 사례

  • 대규모 비즈니스 프로세스 관리(BPM): 주문 처리 시스템, 금융 거래 조정
  • 엔터프라이즈 서비스 버스(ESB) 아키텍처: 마이크로서비스 간 통합을 위한 중앙 조정
  • 워크플로우 기반 시스템: 다단계 프로세스가 필요한 시스템 (예: 보험 청구 처리, 물류 관리)

4.2 브로커 토폴로지 활용 사례

  • 이벤트 기반 마이크로서비스: 개별 서비스 간 독립적인 메시지 교환 (예: 전자상거래 시스템)
  • IoT 및 실시간 데이터 스트리밍: IoT 센서 데이터 수집 및 분석 (예: 스마트 시티, 산업 자동화)
  • 대용량 데이터 처리 시스템: Kafka 기반 로그 분석 및 빅데이터 파이프라인

각 토폴로지는 사용 사례에 따라 선택되며, 일부 시스템에서는 두 방식을 혼합하여 사용할 수도 있다.


5. 결론

중재자 토폴로지(Mediator Topology)와 브로커 토폴로지(Broker Topology)는 분산 시스템에서 서비스 간의 통신을 최적화하는 핵심 아키텍처 패턴이다.

  • 중재자 토폴로지는 중앙 집중형 조정을 통해 복잡한 비즈니스 프로세스를 관리하는 데 적합하다.
  • 브로커 토폴로지는 서비스 간 독립성을 유지하면서 메시지를 분산 전달하는 방식으로 확장성이 뛰어나다.
  • 기업의 요구사항에 따라 두 가지 방식 중 적절한 토폴로지를 선택하거나, 혼합하여 활용할 수 있다.

시스템 아키텍처 설계 시, 중재자와 브로커 토폴로지의 특성을 이해하고 적절한 전략을 선택하는 것이 중요하다.

728x90
반응형

'Topic' 카테고리의 다른 글

CC 인증(Common Criteria Certification)  (0) 2025.03.20
분산 시스템 아키텍처  (3) 2025.03.20
가상화(Virtualization)  (0) 2025.03.20
코드형 인프라스트럭처(Infrastructure as Code)  (0) 2025.03.20
CAN(Controller Area Network) 통신  (0) 2025.03.20