WebSocket 기술의 장단점
장점
- 단방향 통신 프로토콜인 HTTP와 달리 양방향으로 웹 기반의 데이터를 전달할 수 있어 서버가 지속적으로 데이터를 전달해야 하는 경우에 용이함
- HTTP 폴링 방식보다 오버헤드가 적어 자연스럽게 지연이 적어진다.
- 다양한 기기의 기술 지원으로 호환성이 높음
단점
- 지속적으로 연결을 유지해야 하므로 서버의 부담이 생길 수 있다.
- 각 연결의 상태 관리가 필요하다.(메모리 사용 ⬆️)
선택한 이유
- 특히 우리는 채팅 서버에 WebSocket을 사용할 예정이므로 한 시청자가 메시지를 작성하여 서버에 보낸다면 그 메시지를 모든 시청자들에게 바로 보내야 하므로 WebSocket의 양방향 통신이 적합하다고 생각
따라서 학습을 하고 아래와 같이 정리해본 결과 WebSocket으로 클라이언트와의 데이터 전달을 수행하기로 함
WebSocket 프로토콜 업그레이드는 HTTP 1.1 기반의 연결로 시도해보고 부적합한 부분이 식별되면 HTTP/2 기반의 연결로 시도하기로 한다.
https://medium.com/@delivalue100/웹소켓-feat-tcp-소켓-http-b35171b5f4f0
대체안은 무엇이 있는가?