[Java, JavaScript] 웹 소켓을 이용해 다중 1대1 채팅방 구현하기(DB 연동)
개발 환경 : Spring boot 2.7.6 (JPA), mysql, javascript(ajax) 팀 프로젝트 중 채팅을 구현해야 할 일이 생겼다. 채팅을 간단하게 1대 다 혹은 1대1 로만 구현하는 것은 굉장히 쉬워보였으나 내가 원하는 기능은 '1대1 대화가 서로 서로 가능한 채팅방 구현'이었다. 이게 된다면 1대다, 다대다도 비슷한 원리로 모두 가능하다. 그러나 우선은 내가 필요한 기능은 1대1로 서로 구분된 채팅을 하는 것이었다. 이를 위해서 우선 socket의 원리에 대해 이해해야 했다. 내 막연한 상상으로는 하나의 포트번호에서 여러개의 소켓으로 서로 다른 통신을 한다는 것이 불가능해보였기 때문이다. 그러나 엔드포인트를 다르게 둔다면 같은 포트에서도 충분히(당연한건지 모르겠으나) 가능한 일이었..
2023.09.20