창욱씨 2021. 3. 6. 02:14

STOMP의 개념

STOMP(Simple/Stream Text Oriented Messaging Protocol)은 간단한 문자 기반 메시징 프로토콜입니다. STOMP는 TCP나 WebSocker과 같은 신뢰성 있는 양방향 streaming network protocol에 사용될 수 있습니다.

STOMP의 특징

  • 기존 AMQP나 MQTT와 같이 binary 기반이 아닌 텍스트를 기반으로 하는 프로토콜
  • HTTP와 같이 프레임을 사용해 전송하는 프로토콜(프레임이란 주소와 명령, 명령 수행을 위한 데이터가 포함된 데이터를 의미)
  • 기본적으로는 텍스트 기반 통신을 사용하지만 바이너리 기반 통신도 지원

STOMP의 Frame 구조

STOMP Frame은 Header, Command, Body로 구성됩니다. Frame은 몇 개의 텍스트 라인으로 지정된 구조인데 첫 번째 라인은 Command이고 이후 key:value 형태로 header 정보를 포함합니다. header 이후에 공백 줄을 하나 더 추가하는 것으로 header의 끝을 설정할 수 있습니다. header 이후에는 Body가 존재합니다. Payload(데이터)는 body에 위치하는데 끝은 null문자로 설정합니다.

COMMAND
header1:value1
header2:value2

Body^@

https://stomp.github.io/stomp-specification-1.2.html

728x90