[Computer Science] 웹 소켓

김상현·2023년 9월 5일
0

CS

목록 보기
4/10
post-thumbnail

📌 웹 소켓

웹 소켓은 사용자의 브라우저와 서버 사이의 인터액티브 통신 세션을 설정할 수 있게 하는 기술이다.
웹 소켓 API를 통해 서버로 메시지를 보내고 서버의 응답을 위해 서버를 폴링하지 않고도 이벤트 중심 응답을 받는 것이 가능하다.
웹 소켓은 전이중 통신이 가능하기 때문에 실시간성을 보장하는 서비스에서 사용한다.

📌 HTTP와 웹 소켓의 차이

HTTP는 비연결성이라는 특징을 가지고 있다. 따라서 통신을 지속하려면 매번 통신 대상과 연결을 맺고 끊는 과정(3 way handshake, 4 way handshake)을 반복해야 한다.
웹 소켓은 연결 지향이라는 특징을 가지고 있다. HTTP와 같이 연결시에는 오랜 시간이 걸리지만 한번 연결을 맺은 이후에는 연결을 유지하기 위한 새로운 비용이 소모되지 않는다.

지속적인 통신이 필요한, 실시간성을 보장해야 하는 서비스에서 HTTP를 사용할 경우 연결 비용이 지속적으로 낭비되지만 웹 소켓을 사용할 경우 한번 연결 맺은 뒤 연결 비용이 추가로 소모되지 않기 때문에 더 효율적인 기능 구현을 할 수 있다.

📌 STOMP

STOMPSimple Text Oriented Messaging Protocol의 약자로 웹 소켓 위에서 동작하는 문자 기반 메세징 프로토콜로써 클라이언트와 서버가 전송할 메세지의 유형, 형식, 내용들을 정의한다.

profile
목적 있는 글쓰기

0개의 댓글