WebSocket 과 Socket.io 의 강의를 듣고 타임어택 과제를 하면서
과제의 목표 중 하나인 io.sockets.adapter.rooms 활용을 위해 공부 한 것을 정리 해보려 한다.
참고자료
https://socket.io/docs/v4/adapter/
https://ssocoit.tistory.com/206
adapter는 두 서버를 연결해서 데이터를 전송하는 기능을 맡아준다.
서비스의 사이즈가 커지게 되는 경우, 여러개의 서버를 구동해야 할 경우가 생긴다.
이런 경우에 특정 사용자는 A서버, 또다른 사용자는 B서버에서 서비스를 이용하는 경우가 생기는데,
A서버와 B서버의 유저가 서로 소통할 수 있게 만들어 주는 기능을 하는 것이 adapter 이다.
public으로 room을 만들어 join 하면,
아래의 사진에 나온 것 처럼 roomId => { 'socket.id', 'socket.id' ...} 형태로 저장한다.
console.log(io.sockets.adapter.rooms)