실시간 채팅, 알림, 협업 도구에 사용되는 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