본문 바로가기
  • Adillete
【와신상담】

[spring] websocket

by 아딜렛 2025. 2. 10.

STOMP

simple text oriented Messaging protocol

메시지 브로커를 활용하여 쉽게 메시지를 주고 받을 수있는 프로토콜

pub- sub : 발신자가 메시지를 발행하면 수신자가 그것을 수신하는 메시징 패러다임

메시지 브로커: 발신자의 메시지를 받아와서 수신자들에게 메시지를 전달하는 어떤것

 

참고 자료)

https://velog.io/@hit-that-drum/%EC%9B%B9%EC%97%90%EC%84%9C%EC%9D%98-%EC%8B%A4%EC%8B%9C%EA%B0%84-%ED%86%B5%EC%8B%A0

 

웹에서의 실시간 통신

웹에서의 실시간 통신

velog.io

 

왜 웹소켓을 사용하는가? - 『박승규 저자,Node.js 백엔드 개발자 되기 p.249 일부 발췌』

 ⓐ화면 갱신 없이 실시간성을 요구하는 어플리케이션을 만드는데 용이함

 ⓑ클라이언트가 서버에 따로 요구하지 않아도 양방향 통신이 가능함

 ⓒ웹 환경에서 연속된 데이터를 노출하기 쉬움(->그래서 채팅프로그램에 사용 多)

 

socket.io 대신 stomp를 사용한 이유?

1 . 스프링과 통합이 쉽다. 스프링에서 stomp 를 지원해주기 때문에 통합이 쉬운편이다.
2. 메시지 구조화 : stomp 가 메시지 기반 아키텍처를 사용하여 메시지를 "publicsh/ subscribe" 패턴으로 구조화 할수 있다.
3.HTTP 처럼 헤더와 본문의 명확한 구분되어있어서 디버깅이 쉽다.
4. 표준화된 명령어로 connect/ disconnect 를 할수 있다.
5. 목적지 경로 방식을 명시적으로 지정하여 확인이 쉬움