운영체제의 Transport layer(전송계층)에서 제공하는 API를 활용해서 통신가능한 프로그램을 만드는 것을 TCP/IP 소켓 프로그래밍, 또는 네트워크 프로그래밍이라 한다.
Soekct.io 는 리얼타임, 양방향, 이벤트 기반인 커뮤니케이션을 할 수 있다. 브라우저나 디바이스 등 모든 플랫폼 위에서 동작한다.
실시간 분석
이나 영상 등실시간 스트리밍
,채팅
등에서 사용한다.
본 글에서는 Socket.io의 다양한 기능 중, 브로드캐스팅에 대해 서술한다.
Socket.io는 연결된 모든 클라이언트에게 이벤트를 쉽게 전달할 수 있다.
바로 broadcasting
이라는 feature로 가능한데, 이 기능은 server-only 기능이다.
io.on("connection", (socket) => {
io.emit("hello", "world");
});
// server-side
io.on("connection", (socket) => {
socket.broadcast.emit("hello", "world");
});