실시간 채팅, 알림, 협업 도구에 사용되는 Socket.IO를 알아봅니다. WebSocket의 상위 라이브러리로서 재연결, 룸, 네임스페이스 등을 제공합니다.
WebSocket과의 차이
Socket.IO는 WebSocket을 기반으로 하되, 폴백(polling)과 자동 재연결, 이벤트 기반 API, 룸/네임스페이스 등을 추가로 제공합니다. 네트워크가 불안정한 환경에서도 안정적입니다.
Room 기반 브로드캐스트
채팅방처럼 특정 그룹에만 메시지를 보내는 기능입니다. `io.to('room1').emit(...)` 형태로 간단히 사용할 수 있습니다.
스케일 아웃
Redis Adapter를 사용하면 여러 Socket.IO 서버가 Pub/Sub으로 메시지를 공유해 수평 확장이 가능합니다.
📎 참고 자료
https://guidey.tistory.com/77
https://guidey.tistory.com/77