위키득계정 ↗
기술

STOMP

STOMP기술
주요 역할
비동기 메시지 전달
기본 표현
명령과 헤더 및 본문
전송 전제
신뢰할 수 있는 양방향 스트림
목적지 의미
서버 구현이 정의
STOMP는 클라이언트가 중개 서버를 통해 비동기 메시지를 주고받는 프로토콜이다. 명령과 헤더 및 본문으로 이루어진 프레임을 사용하며 단순한 구현과 서로 다른 시스템 사이의 상호 운용을 목표로 한다.

프레임으로 표현하는 통신

STOMP는 텍스트 기반 프레임 형식을 사용하지만 이진 본문도 전달할 수 있다. TCP 같은 신뢰할 수 있는 양방향 스트림 위에서 클라이언트와 서버가 명령을 교환한다.

송신과 구독의 역할

클라이언트는 SEND 프레임으로 서버의 목적지에 메시지를 보낸다. SUBSCRIBE로 목적지를 구독하면 서버가 MESSAGE 프레임으로 메시지를 전달한다. 한 클라이언트가 송신과 수신 역할을 함께 맡을 수도 있다.

공통 규격과 서버별 의미

목적지는 규격에서 불투명한 문자열로 취급한다. 목적지 이름의 형식과 실제 메시지 분배 방식은 서버가 정의하므로 같은 프로토콜을 사용해도 모든 브로커의 큐나 구독 의미가 동일하다고 볼 수는 없다.

관련 문서

Apache ActiveMQ / RabbitMQ / MQTT / TCP / HTTP / AsyncAPI