코딩캠프/내일배움캠프

[ TIL ] 01.09(월) 41일차

고랑E 2023. 1. 9. 22:54
728x90

웹소켓이란 실시간 통신을 위해서
웹브라우저에서 소켓의 형태를 지원하는 형태의 프로토콜 이다.

 

실시간 통신의 종류

  • Polling
    • 특징
      • Stateless 와 Connectionless 특징을 가지고 있다.
      • 요청이 있어야만 응답을 할 수 있다.
    • 단점
      • HTTP 오버헤드가 증가
  • Long Polling
    • 특징
      • Polling 하나의 생명주기 시간을 늘린다.
      • 이벤트가 발생할때까지 대기한다.
      • HTTP 요청 빈도 감소
  • WebSocket
    • 특징
      • HTTP 통신이 아닌 TCP 에서 동작을 한다.
      • HTTP와 달리 StatePul 하다.
      • Polling처럼 주기적으로 요청받을 필요가 없다.
      • 양방향 통신이 가능하다.
  • Server Sent Event(SSE)
    • 특징
      • 서버에서 클라이언트로 단방향 데이터를 전달할 수 있는 HTML5 표준 기술
      • WebSocket과 다르게 별도의 프로토콜을 구축하지 않아도 된다.
      • Polling 처럼 요청을 주기적으로 보내 응답하지 않아도 된다.
  • WebRTC
    • 특징
      • 앞선 기술들은 Client-Server 구조로 동작하지만, WebRTC는 P2P 방식으로 통신을 한다.
      • UDP통신을 한다.
    • 단점
      • P2P이다보니 사용자가 많아지면 성능이 낮아진다.