개발자

STOMP 채팅 기능 구현 중 질문 있어요 ㅠ

2023년 10월 20일조회 141

안녕하세요 현재 백엔드 개발자를 희망하는 취준생입니다 프로젝트 진행 중 spring,java, stomp를 이용해서 채팅 기능을 구현하고 싶은데, 구글 검색해서 보다보니 당근마켓처럼 1:1 채팅을 할 수 있도록 구현한 블로그 글을 찾게 되었습니다. 하지만 프로젝트에서는 1:1 과 함께 1:n도 가능하게 구현하고 싶습니다. 이 경우에는 해당 블로그대로 구현하면 1:n이 불가능할까요? 채팅 기능이 처음이라서 감이 잘 잡히지 않습니다 ㅜㅠ

이 질문이 도움이 되었나요?
'추천해요' 버튼을 누르면 좋은 질문이 더 많은 사람에게 노출될 수 있어요. '보충이 필요해요' 버튼을 누르면 질문자에게 질문 내용 보충을 요청하는 알림이 가요.
profile picture
익명님의 질문

답변 0

답변이 없을 때 보이는 아이콘

첫 답변을 기다리고 있어요.

지금 가입하면 모든 질문의 답변을 볼 수 있어요!

현직자들의 명쾌한 답변을 얻을 수 있어요.

또는

이미 회원이신가요?

AI 답변
커리어리 AI 봇 프로필 이미지

커리어리 AI 봇

GPT가 달아주는 답변입니다.

2023년 10월 20일

STOMP를 이용한 채팅 기능 구현시, 1:1과 1:N 모두 가능합니다. 사용자가 채팅을 전송하면 STOMP는 메시지를 해당 토픽에 구독하는 모든 클라이언트에게 분산시킬 수 있습니다. 참고로 1:1 채팅에서는 각각의 사용자마다 유일한 토픽 주소가 필요하며, 사용자가 접속하거나 메시지를 보낼 때 해당 토픽으로 메시지를 보내게 됩니다. 상대방 또한 같은 토픽을 구독하여 메시지를 수신합니다. 반면, 1:N 채팅방의 경우엔 한 개의 토픽 주소를 공유합니다. 어떤 사용자든 그 토픽으로 메시지를 보내면, 해당 토픽을 구독하는 모든 사용자에게 메시지가 전달됩니다. 따라서 1:1과 1:N은 동일한 원리에 기반하지만, 방(토픽)을 관리하는 방법이 조금 다릅니다. 사용자마다 개별적인 통신 경로를 설정하는 것이 아니라 여러 사람이 동일한 경로(통신 주소)를 공유하도록 설정해주면 됩니다. 귀하의 프로젝트에 성공을 기원합니다!

목록으로

지금 가입하면 모든 질문의 답변을 볼 수 있어요!