인프런 커뮤니티 질문&답변

kth050213님의 프로필 이미지
kth050213

작성한 질문수

파이썬/장고로 웹채팅 서비스 만들기 (Feat. Channels) - 기본편

1대1 채팅방 만들때

해결된 질문

작성

·

541

0

1대1 채팅 기능을 만들고있습니다.

소켓을 연결할때 방 ID를 이용하여 방에 들어 갈때마다 하나 하나 소켓에 연결해야할까요 아니면

상대방 userID로 소켓에 연결하여 방 id와 함께 메세지를 전송해야할까요??

답변 1

0

이진석님의 프로필 이미지
이진석
지식공유자

안녕하세요.

설계하기 나름이겠지만, 채팅이라는 행위는 1:1 이라할지라도 방 단위로 이뤄지는 것이니까

방 단위로 채팅을 처리하는 것이 보다 명확하고 간결한 설계이지 않을까 싶습니다.

화이팅입니다. :-)

kth050213님의 프로필 이미지
kth050213
질문자

그럼 채팅방 목록 화면에서 채팅이 오는것을 받으려면 모든 채팅방과 소켓을 연결해야하는건가요??

이진석님의 프로필 이미지
이진석
지식공유자

그런 경우에는, 별도의 알림(notifications) 단일 채널을 통해 메세지 알림을 보내고,

채팅방에 입장해서는 그 채팅방의 채널을 통해 실시간 통신을 이어나가실 수 있으실 듯 합니다.

kth050213님의 프로필 이미지
kth050213
질문자

그럼 프론트에서는 메세지를 전송할때 두개의 소켓에 연결해서 전송해야 하는건가요??

이진석님의 프로필 이미지
이진석
지식공유자

제가 이미 말씀드린 부분을 재차 물어보시는 질문의 의도를 잘 모르겠습니다.

질문을 주실 때, 질문 하나에 의도를 좀 더 명확하게 밝혀주셨으면 합니다.

kth050213님의 머리 속에 있는 맥락을 모두 설명해주지 않으시면, 제가 드릴 수 있는 답변은 단편적일 수 밖에 없습니다.

그리고, 어떤 결정이든 trade off가 있습니다. 최선의 선택이 있을 뿐, 최고의 선택은 없습니다.

kth050213님의 프로필 이미지
kth050213

작성한 질문수

질문하기