본문 바로가기

Web Socket

Web Socket이란?

Web Socket이란?

HTML5 표준 기술로, 사용자의 브라우저와 서버 사이의 동적인 양방향 연결 채널을 구성합니다. WebSocket API를 통해 메시지를 서버로 보내고, 요청 없이 응답을 받아오는 것이 가능합니다.

 

서버와 클라이언트 간에 Socket Connection을 유지해서 언제든 양방향 통신 또는 데이터 전송이 가능하도록 하는 기술이며 SNS 애플리케이션, 멀티플레이어 게임, 구글 Doc, 증권거래, 화상 채팅 등에 사용됩니다.

 

Web Socket 등장배경

HTTP는 Stateless 한 특성을 갖고 있습니다. 연결이 해제됨과 동시에 클라이언트는 이전에 요청한 결과에 대해서 잊어버리는 것입니다. 하지만 시대의 변화로 단순 문서만 보내는 것이 아닌, 다양한 형태의 데이터 전송과 동적인 통신이 요구되기 시작했습니다. 그래서 POLLING, LONG POLLING, STREAMING의 방식인 Ajax 같은 기술이 등장했지만 데이터 수신을 위해 서버가 클라이언트에게 전송해주는 푸시 방식이 아닌, 클라이언트가 서버에게 요청하는 HTTP의 근본적인 한계인 단방향 통신을 극복하지 못했습니다. 그래서 HTML5에서 Web Socket이 등장하게 되었습니다.

HTTP 프로토콜에서 handshaking을 완료한 후, HTTP로 동작을 하지만, Web Socket은 다른 방식으로 통신을 한다.

 

 

 

출처

https://yeon1216.tistory.com/6

https://imover.tistory.com/79

https://duckdevelope.tistory.com/19

https://zara49.tistory.com/14