본문 바로가기
JavaScript 시리즈☕/화상회의 플랫폼 만들기

🖧Socket IO vs WebSockets🧐

by @ENFJ 2021. 9. 11.

아주 쉽게 실시간 기능을 만들어 주는 framework :  socket IO🖧

socket IO 는 나온지 매우매우 오래 되었고 안정적이다.

 

 

 

 

Socket IO 와 WebSocket  개념 정리 & 비교🧐
Socket IO WebSockets
1. 양방향으로 통신한다. (브라우저와 back-end의 양방향을 의미)
2. 메세지를 주고 받고 할 수 있다.
3. event 기반의 통신을 함.


socket IO 는 webSocket 을 실행하는게 아님. websocket 은 socket IO 가 실시간, 양방향 , event 기반 통신을 제공하는 방법중 하나일 뿐이다. (즉, socket IO 안에 websocket 이 있다.) socket IO > websocket 
socket IO 는 webSocket 보다 탄력성이 뛰어남.
=> 즉, socket IO가 websocket을 이용한 연결에 실패를 해도, socket IO는 다른방법을 찾음. (자동 재연결 지원, 연결끊김확임 지원)
 
socket IO 는 websocket 의 부가 기능이 아니다.
socket IO는 가끔 websocket 을 이용하여 실시간,양방향,
event 기반 통신을 제공하는 framework 이다.
 
만약 websocket이용이 불가능하면, socket IO 는 다른 방법을 이용해서 계속 작동함. 
( websocket을 지원하지 않는경우, HTTP-long polling 같은것을 사용함)
 
만약에 socket io 가 브라우저가 websocket을 지원한다는 것을 확인을 하면 => socket io 는 websocket을 이용  
socket IO 는 프론트와 백엔드 간 실시간 통신을 가능하게 해주는 프레임워크 또는 라이브러리이다.
(=> front-end 와 back-end 간 실시간 통신을 websocket을 이용해서 할 수 있다.)
-> front -end 와 back-end 간 실시간 통신을 하기 위해서 꼭 socket IO를 사용할 필요는 없다.
 
socket IO는 실시간 기능 같은것들을 더 쉽게 만드는 편리한 코드를 제공해줌.  
물론 socket IO는 websocket 보다 조금 더 무거움.