WebSocket – SpringBoot + SockJS + STOMP로 Spring WebSocket 애플리케이션 생성

https://grokonez.com/spring-framework/spring-websocket/create-spring-websocket-application-springboot-sockjs-stomp

WebSocket – SpringBoot + SockJS + STOMP로 Spring WebSocket 애플리케이션 생성

WebSocket 프로토콜은 웹 애플리케이션을 위한 새로운 기능인 전이중 양방향 통신을 제공합니다. 따라서 클라이언트와 서버가 높은 빈도와 낮은 대기 시간으로 데이터를 교환해야 하는 시스템에서 WebSocket은 최고의 솔루션입니다. 이것이 우리가 JavaSampleApproach로 Spring WebSocket 애플리케이션을 만드는 이유입니다.

관련 게시물: Spring Boot WebSocket with Angular 5 Client | SockJS + STOMP

I. 스프링 웹소켓 애플리케이션



1. 메시지 흐름



아래 메시지 흐름으로 Spring WebSocket 애플리케이션을 생성합니다.



세부 설명:
  • WebSocket 클라이언트가 '/jsa-stomp-endpoint'에서 WebSocket 끝점에 연결합니다
  • .
  • '/topic/hi'에 대한 구독은 응답 채널을 통과한 다음 메모리 내 브로커(Simple Broker)로 전달됩니다.
  • '/jsa/hello'로 전송된 사용자 개체는 요청 채널을 통과한 다음 스프링 WebController로 전달됩니다. WebController는 User에 의해 @MessageMapping 객체를 처리하고 Hello 메시지로 변환한 다음 @SendTo를 사용하여 brokerChannel을 통해 메시지를 '/topic/hi'로 반환합니다.
  • 
    ...
    
    @MessageMapping("/hello")
    @SendTo("/topic/hi")
    public Hello greeting(User user) throws Exception {
        return new Hello(...);
    }
    
    ...
    
  • Simple Broker는 응답 채널을 통해 구독자에게 메시지를 브로드캐스트합니다.

    2. 서버 측


    서버 측에서는 애플리케이션에 SockJS와 STOMP를 사용합니다.

  • SockJS란?
    -> SockJS를 사용하면 애플리케이션이 WebSocket API를 사용할 수 있지만 런타임에 필요할 때 애플리케이션 코드를 변경할 필요 없이 WebSocket이 아닌 대안으로 대체됩니다.

    Spring 애플리케이션에서 SockJS 및 Stomp를 활성화하는 간단한 Java 구성:

    더 보기:

    https://grokonez.com/spring-framework/spring-websocket/create-spring-websocket-application-springboot-sockjs-stomp

    WebSocket – SpringBoot + SockJS + STOMP로 Spring WebSocket 애플리케이션 생성

    좋은 웹페이지 즐겨찾기