폴링(Polling)
- 폴링은 클라이언트(브라우저)가 일정한 시간 간격으로 서버에 지속적으로 요청을 보내어 새로운 데이터가 있는지 확인하는 방식이다. 즉, 클라이언트가 주기적으로 서버에 업데이트된 내용이 있는지 묻는 방식이다.
폴링의 동작 방식
- 클라이언트가 일정 간격으로 서버에 요청을 보낸다.
- 서버는 새로운 데이터가 있으면 응답으로 보내고, 없다면 빈 응답을 보내거나 기다렸다가 응답을 보낸다.
- 클라이언트는 응답을 받은 후 다시 서버에 요청을 보낸다.
SSE (Server-Sent Events)
SSE는 서버에서 클라이언트로 일방적으로 데이터를 보내는 방식이다. 클라이언트는 서버와의 연결을 열고, 서버가 새로운 데이터를 생성할 때마다 자동으로 클라이언트에게 전송한다.
SSE의 동작 방식
- 클라이언트는 서버에 단일 연결을 연다.
- 서버는 클라이언트에 실시간으로 데이터를 전송할 수 있다.
- 클라이언트는 서버가 보내는 새로운 데이터를 자동으로 수신하게 된다.
- 폴링은 구현이 쉽지만, 실시간 성능이 필요 없는 간단한 업데이트에 적합하다.
- SSE는 실시간 업데이트가 필요한 상황에서 효율적으로 사용될 수 있지만, 양방향 통신이 필요한 경우에는 WebSocket을 사용하는 것이 더 적합할 수 있다.