피드로 돌아가기
Dev.toBackend
원문 읽기
HTTP 기반 단방향 푸시 SSE 도입을 통한 네트워크 오버헤드 최적화
Server-Sent Events (SSE)
AI 요약
Context
실시간 상태 업데이트 구현을 위해 Polling과 WebSocket을 검토하였으나, 빈번한 요청으로 인한 인프라 부하와 불필요한 양방향 통신 자원 낭비라는 한계점 식별.
Technical Solution
text/event-streamContent-Type 설정을 통한 서버-클라이언트 간 Persistent Connection 유지- HTTP 표준 프로토콜 기반의 단방향 데이터 스트리밍 구조 채택으로 WebSocket 대비 낮은 구현 복잡도 달성
CancellationToken을 활용한 클라이언트 연결 종료 감지 및 서버 측 Zombie Connection 방지 로직 구현data:접두사와 Double Newline(`
`) 규격을 준수하는 SSE Spec 기반의 텍스트 프로토콜 적용
- 클라이언트의 반복적 API 요청을 서버 측 단일 연결 내 업데이트 전송 방식으로 전환하여 Network Traffic 감소
실천 포인트
- 실시간 업데이트가 단방향(Server to Client)으로만 필요한지 확인 - WebSocket 도입 전 HTTP 표준으로 해결 가능한 SSE 적용 가능성 검토 - 서버 리소스 누수 방지를 위한 Connection Lifecycle 관리 및 Timeout 설정 확인 - DB Polling 기반의 SSE 구현 시 성능 저하 방지를 위해 Pub/Sub 기반 Event-Driven 구조로의 전환 고려