서버에서 데이터를 클라이언트에게 보낼 때 두가지 접근 방식이 있음
1. client pull
- client가 server에게 일정한 간격으로 업데이트를 요청
2. server push
- server가 client에게 proactive하게 업데이트를 push.
적용된 예시
- Long/short polling (client pull)
- WebSopckets (server push)
- Server-Sent Events (server push)
Polling
Polling은 client가 server에게 정기적으로 새 데이터를 요청하는 것.
두가지 방식으로 polling 할 수 있음
- Short polling
AJAX-based timer. 고정된 딜레이를 call.
- Long polling
based on Comet. 서버 이벤트가 발생하면 딜레이 없이 서버가 클라이언트에게 데이터를 보냄
Websocket
client와 server의 연결을 지속함. 이 커뮤니케이션 프로토콜은 양방향의 커뮤니케이션을 지원
SSE
한번 client-server 연결이 되면 server가 client에게 비동기적으로 data를 push.
서버는 새로운 데이터 묶음이 가능하면 언제든 데이터를 보낼 수 있도록 결정할 수 있다.
출처
https://codeburst.io/polling-vs-sse-vs-websocket-how-to-choose-the-right-one-1859e4e13bd9
'TIL' 카테고리의 다른 글
[삽질 기록] Unit test 자동화하기 step1 (1) | 2021.08.27 |
---|---|
week2 도커엔진 (0) | 2021.08.19 |
도커 기초 week 1 (0) | 2021.08.11 |
Django model on_delete (0) | 2021.04.22 |
입사 전 맥북 개발환경 설정 공부 (0) | 2020.06.29 |