From 2483bd5f70e111e2b57bafec1b9ed8e8dff5d3dd Mon Sep 17 00:00:00 2001 From: Jae-HyeokKim Date: Mon, 25 Aug 2025 15:24:54 +0900 Subject: [PATCH] =?UTF-8?q?feat(chat):=20=EC=B1=84=ED=8C=85=EB=B0=A9=20?= =?UTF-8?q?=EC=B1=84=ED=8C=85=20=EB=A9=94=EC=84=B8=EC=A7=80=20=EC=A0=84?= =?UTF-8?q?=EB=8B=AC=20=EB=A1=9C=EC=A7=81=20=EB=94=94=EB=B2=84=EA=B9=85=20?= =?UTF-8?q?(#78)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../backendProject/domain/chat/bus/ChatRedisPublisher.java | 4 ++-- .../domain/chat/controller/ChatMessagingController.java | 4 ++-- .../domain/chat/controller/ChatNotificationController.java | 2 +- .../domain/chat/service/Impl/ChatNotificationServiceImpl.java | 2 +- 4 files changed, 6 insertions(+), 6 deletions(-) diff --git a/backendProject/src/main/java/likelion/mlb/backendProject/domain/chat/bus/ChatRedisPublisher.java b/backendProject/src/main/java/likelion/mlb/backendProject/domain/chat/bus/ChatRedisPublisher.java index bdd0685..ecc9272 100644 --- a/backendProject/src/main/java/likelion/mlb/backendProject/domain/chat/bus/ChatRedisPublisher.java +++ b/backendProject/src/main/java/likelion/mlb/backendProject/domain/chat/bus/ChatRedisPublisher.java @@ -18,11 +18,11 @@ public class ChatRedisPublisher { private final String nodeId = System.getProperty("node.id", java.lang.management.ManagementFactory.getRuntimeMXBean().getName()); - public void publishToRoom(UUID roomId, Map payload) { + public void publishToRoom(String roomId, Map payload) { try { payload.put("_src", nodeId); // 루프 방지 태그 String json = objectMapper.writeValueAsString(payload); - stringRedisTemplate.convertAndSend(ChatChannels.roomChannel(roomId), json); + stringRedisTemplate.convertAndSend(roomId, json); } catch (Exception ignore) {} } diff --git a/backendProject/src/main/java/likelion/mlb/backendProject/domain/chat/controller/ChatMessagingController.java b/backendProject/src/main/java/likelion/mlb/backendProject/domain/chat/controller/ChatMessagingController.java index 0432c89..1aab097 100644 --- a/backendProject/src/main/java/likelion/mlb/backendProject/domain/chat/controller/ChatMessagingController.java +++ b/backendProject/src/main/java/likelion/mlb/backendProject/domain/chat/controller/ChatMessagingController.java @@ -66,9 +66,9 @@ public void send(@DestinationVariable UUID roomId, System.out.println("------------받은메세지"+req.getContent()); // ✅ 즉시 현재 노드의 클라이언트에게 전달 - messagingTemplate.convertAndSend("/topic/chat/" + roomId, payload); + //messagingTemplate.convertAndSend("/topic/chat/" + roomId, payload); // ✅ 다른 노드를 위해 Redis로도 전달 - chatRedisPublisher.publishToRoom(roomId, new java.util.HashMap<>(payload)); + chatRedisPublisher.publishToRoom("/topic/chat/" + roomId, new java.util.HashMap<>(payload)); } } diff --git a/backendProject/src/main/java/likelion/mlb/backendProject/domain/chat/controller/ChatNotificationController.java b/backendProject/src/main/java/likelion/mlb/backendProject/domain/chat/controller/ChatNotificationController.java index d8cc8c4..eaa9bec 100644 --- a/backendProject/src/main/java/likelion/mlb/backendProject/domain/chat/controller/ChatNotificationController.java +++ b/backendProject/src/main/java/likelion/mlb/backendProject/domain/chat/controller/ChatNotificationController.java @@ -50,7 +50,7 @@ public ResponseEntity> roomAlert( "createdAt", saved.getCreatedAt().toString() ); messagingTemplate.convertAndSend("/topic/chat/" + roomId, payload); - chatRedisPublisher.publishToRoom(roomId, new java.util.HashMap<>(payload)); + //chatRedisPublisher.publishToRoom(roomId, new java.util.HashMap<>(payload)); return ResponseEntity.ok(Map.of("ok", true, "id", saved.getId().toString())); } diff --git a/backendProject/src/main/java/likelion/mlb/backendProject/domain/chat/service/Impl/ChatNotificationServiceImpl.java b/backendProject/src/main/java/likelion/mlb/backendProject/domain/chat/service/Impl/ChatNotificationServiceImpl.java index 3a3832a..3bc2dfd 100644 --- a/backendProject/src/main/java/likelion/mlb/backendProject/domain/chat/service/Impl/ChatNotificationServiceImpl.java +++ b/backendProject/src/main/java/likelion/mlb/backendProject/domain/chat/service/Impl/ChatNotificationServiceImpl.java @@ -85,7 +85,7 @@ protected void doDispatch(UUID playerId, "createdAt", saved.getCreatedAt().toString() ); messagingTemplate.convertAndSend("/topic/chat/" + roomId, payload); - chatRedisPublisher.publishToRoom(roomId, new java.util.HashMap<>(payload)); + // chatRedisPublisher.publishToRoom(roomId, new java.util.HashMap<>(payload)); } }