[실시간 채팅 구현] HTTP, WebSoket

2024. 7. 23. 16:25· GDSC/실시간 채팅 구현
목차
  1. HTTP (HyperText Transfer Protocol)
  2. WebSoket
  3. HTTP vs WebSoket

HTTP (HyperText Transfer Protocol)

HTTP는 클라이언트가 서버에 요청을 보내면 서버가 응답을 보내는 단방향 통신이다. 따라서 클라이언트의 요청이 없으면 서버는 데이터를 보낼 수 없다.

HTTP로 채팅 서비스를 구현하려면 서버에 지속적인 요청을 보내야하는데 이를 Polling이라고 한다. 서버에 일정한 간격의 Polling을 주기적으로 보내 데이터의 변화를 체크하여 업데이트한다. Polling의 간격이 너무 짧으면 서버 부하가 증가하고, 너무 길면 실시간성이 떨어지게 되므로 적절한 간격을 설정할 필요가 있다.

 

WebSoket

웹 소켓은 클라이언트와 서버가 한 번 연결되면, 그 연결이 지속되는 양방향 통신이다. 클라이언트와 서버가 서로 데이터를 주고받을 수 있으며, 서버는 클라이언트의 요청이 없어도 데이터를 보낼 수 있다.
웹 소켓은 지속적인 연결로 양방향 통신을 제공하기 때문에 채팅 서비스에서 중요한 지연시간이 거의 없다. 그래서 채팅 서비스에는 웹 소켓 방식이 많이 쓰인다.

 

HTTP vs WebSoket

  장점 단점
HTTP 요청-응답 모델 기반 구현이 간단 지속적인 요청 필요
polling으로 인한 지연시간 발생
WebSoket 지속적인 연결 유지로 실시간 양방향 통신 가능 지속적인 연결 유지로 서버 자원 부담

 

 

'GDSC > 실시간 채팅 구현' 카테고리의 다른 글

[JS][프론트엔드] Polling 방식을 이용한 실시간 채팅 구현  (0) 2024.08.22
[실시간 채팅 구현] API, 비동기 처리  (0) 2024.08.01
[실시간 채팅 구현] 프로젝트 개요  (0) 2024.07.23
  1. HTTP (HyperText Transfer Protocol)
  2. WebSoket
  3. HTTP vs WebSoket
'GDSC/실시간 채팅 구현' 카테고리의 다른 글
  • [JS][프론트엔드] Polling 방식을 이용한 실시간 채팅 구현
  • [실시간 채팅 구현] API, 비동기 처리
  • [실시간 채팅 구현] 프로젝트 개요
leeemingyu
leeemingyu
leeemingyu
ye
leeemingyu

블로그 메뉴

  • GitHub
  • Instagram
    전체
    오늘
    어제
    • 전체보기 (68)
      • GDSC (4)
        • 실시간 채팅 구현 (4)
      • [LG 유플러스] 유레카 (63)
        • Today I Learned (37)
        • 코딩테스트 (22)
        • 프로젝트 (4)

    공지사항

    인기 글

    최근 댓글

    최근 글

    hELLO · Designed By 정상우.v4.2.2
    leeemingyu
    [실시간 채팅 구현] HTTP, WebSoket
    상단으로

    티스토리툴바

    단축키

    내 블로그

    내 블로그 - 관리자 홈 전환
    Q
    Q
    새 글 쓰기
    W
    W

    블로그 게시글

    글 수정 (권한 있는 경우)
    E
    E
    댓글 영역으로 이동
    C
    C

    모든 영역

    이 페이지의 URL 복사
    S
    S
    맨 위로 이동
    T
    T
    티스토리 홈 이동
    H
    H
    단축키 안내
    Shift + /
    ⇧ + /

    * 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.