Socket.IO는 WebSocket 위에 이벤트 프로토콜과 운영 기능을 얹는다
순수 WebSocket wrapper가 아니라 Engine.IO handshake, fallback, room, ack, adapter를 함께 제공하는 실시간 계층이다.
1Application eventsemit/on, room, namespace, ack
2Socket.IO protocolevent name, payload, acknowledgement
3Engine.IOhandshake, heartbeat, transport upgrade
4TransportWebSocket 또는 polling fallback
5HTTP/TCP프록시와 로드 밸런서 timeout 영향
기능
얻는 것
함께 설계할 것
Fallback
연결 성공률 증가
프로토콜 복잡도와 fallback 지연
Room
그룹 broadcast
다중 서버 adapter와 pub/sub
Ack
처리 확인
timeout, 중복, 재시도 정책