Redis 채널로부터 수신한 메시지를 Sprinb Boot에서 웹 소켓으로 표출하는 방법입니다.
https://tiqndjd12.tistory.com/260
https://tiqndjd12.tistory.com/197
이전에 작성한 Redis Subscriber와 Spring Boot 웹 소켓 연계하는 코드를 발췌해서 진행하겠습니다.
spring-boot-starter-websocket와 spring-boot-starter-thymeleaf 라이브러리를 추가합니다.
스프링 부트와 웹 소켓 연계를 담당하는 핸들러입니다.
저번에 작성한 코드에 getFirstWebSocketsession 메소드를 추가했습니다.(52 ~ 54라인)
이 메소드는 테스트 목적으로 작성한 임시 메소드로 웹 소켓 세션 중에서 첫번째 세션을 리턴하고 있습니다.
스프링에 웹 소켓 설정을 담당하는 WebSocketConfig 클래스입니다.
앞에서 생성한 핸들러를 등록하고, 클라이언트와 연계할 경로를 설정합니다.(17 ~ 20라인)
Redis 채널로부터 메시지를 수신하는 클래스입니다.
저번에는 Sysout으로 메시지를 표출했는데 이번에는 웹 소켓의 첫번째 세션에 해당 메시지를 전달하여 표출합니다.
Redis "test-channel"이라는 이름의 채널에 메시지를 발행합니다.
스프링에서 Redis 채널로부터 메시지를 수신한 것을 확인할 수 있습니다.
클라이언트에서 서버로부터 수신한 Redis 메시지를 웹 소켓으로 수신한 것을 확인할 수 있습니다.
'dev > 스프링' 카테고리의 다른 글
Spring RestControllerAdvice (0) | 2024.03.29 |
---|---|
Spring Boot Redis 연계 (0) | 2024.03.28 |
Spring Boot Redis Subscriber (0) | 2024.02.08 |
Spring Boot Redis Publisher (0) | 2024.02.05 |
Spring Boot Session Store Type Redis (0) | 2024.01.25 |