메시징 프로토콜(MQTT, AMQP)

2025. 10. 14. 00:45공부

1. 메시징 프로토콜이란?

메시징 프로토콜(Messaging Protocol)은 서로 다른 시스템 간에 데이터를 메시지 형식으로 안전하고 효율적으로 교환하기 위해 정의된 통신 규칙
HTTP는 요청–응답 기반의 동기식 통신 모델, 메시징 프로토콜은 메시지 큐나 브로커를 활용해 비동기적으로 데이터를 주고받는 모델

 

2. 주요 기능 및 목적

기능 설명
상호 운용성 서로 다른 운영체제, 언어, 플랫폼으로 구축된 시스템들이 메시지 브로커를 통해 원활하게 통신
비동기성 메시지 생산자가 소비자의 응답을 기다리지 않고 작업을 계속할 수 있도록 하여 시스템의 효율성과 처리량을 높임
신뢰성 메시지가 손실되거나 중복되지 않고, 의도된 수신자에게 정확하게 전달되도록 보장하는 기술(Qos, DLQ 등) 제공
내결함성 시스템 일부가 죽어도 메시지를 큐에 보관

3. 메시징 통신 방식

대부분의 메시징 프로토콜은 다음과 같은 두 가지 통신 모델 중 하나를 사용

1. Point-to-Point (Queue 기반)

  • 작동 방식 : 메시지 생산자가 특정 큐에 메시지를 보내면, 해당 큐에 연결된 여러 소비자 중 오직 하나의 소비자만 메시지를 가져가 처리
  • 특징
    • 메시지가 처리될 때까지 큐에 보존되므로 메시지 손실이 적고 신뢰성이 높음
    • 주로 작업 분배나 부하 분산에 사용
    • 예) AMQP의 Queue 모델

2. Publish/Subscribe (Topic 기반)

  • 작동 방식 : 메시지 생산자가 특정 토픽에 메시지를 발행하면, 해당 토픽을 구독하고 있는 모든 소비자에게 전달됨
  • 특징
    • 생산자와 소비자가 서로의 존재를 몰라도 되므로 시스템 결합도가 낮음
    • 실시간 알림, 센서 데이터 전송, 채팅 등 다수의 수신자에게 동시에 정보를 전달하는데 사용
    • 예) MQTT, STOMP

4. 대표적인 프로토콜

프로토콜 MQTT AMQP STOMP
메시지 형식 바이너리 바이너리 텍스트
주요 용도 IoT기기, 센서 금융시스템, 기업용 메시징 실시간 웹 채팅, 알림
주요 특징 경량성, 낮은 전력, QoS제공 강력한 신뢰성, 복잡한 큐 및 라우팅 기능 단순성, 텍스트 기반, WebSocket 친화적

 

반응형