반응형
Polling ?
클라이언트가 서버에 일정 간격을 두고 주기적으로 HTTP 요청을 보내 응답받는 형태의 단방향 실시간 통신이다. 쉽고 간단하게 구현할 수 있지만, 반복적인 요청이 발생하여 불필요한 트래픽이 발생한다.
Long Polling ?
Polling과 동일하게 동작하지만, 클라이언트가 주기적으로 요청하는 것이 아니라 요청 후 응답을 받을 때 까지 기다린다. 마찬가지로 구현은 쉽지만 연결이 많아질 경우 Polling 보다 서버 리소스(메모리) 사용량이 많아질 수 있다.
WebSocket ?
초기 HTTP로 핸드셰이크를 통해 연결 후 WebSocket 프로토콜로 업그레이드하여 연결되는 TCP 기반 양방향 통신이다. 클라이언트와 서버는 지속적인 양방향 통신이 가능하여 Polling(+Long Polling)과 달리 불필요한 트래픽 낭비 없이 실시간성이 매우 뛰어나지만, 웹소켓 서버가 별도로 필요하며 비교적 복잡한 설정 및 관리가 필요하다.
Server-Sent Events (SSE) ?
서버가 HTTP 기반의 단방향 스트리밍을 통해 클라이언트에 이벤트 푸시를 전송함. 클라이언트는 브라우저의 EventSource API를 사용하여 연결하고 메시지를 처리한다. 서버에서 클라이언트로 보내는 형태의 단방향 통신이지만, 구현이 쉽고 실시간성이 뛰어나다.
반응형
'Server' 카테고리의 다른 글
HTTP OPTIONS (0) | 2024.11.07 |
---|---|
HTTP Header (0) | 2022.08.13 |
인터넷 통신 (0) | 2022.06.27 |
CentOS7 SELinux 정책 변경, httpd_sys_rw_content_t 설정 (0) | 2020.11.30 |