Socket.IO
is a javascript library for realtime
web applications. It enables realtime, bi-directional communication between web clients and servers. It has two parts: a client-side library that runs in the browser, and a server-side library for node.js
. Both components have a nearly identical API. Like node.js, it is event-driven.
Socket.IO
primarily uses the websocket
protocol with polling as a fallback option,while providing the same interface. Although it can be used as simply a wrapper for webSocket
, it provides many more features, including broadcasting to multiple sockets, storing data associated with each client, and asynchronous I/O.