The polling problem
Traditional HTTP is request/response: the client asks, the server answers. For real-time apps (chat, live scores, trading), the client must poll โ send a request every second asking *"anything new?"*
This is wasteful: 99% of polls return empty responses. For 10,000 users, that's 10,000 requests/second of overhead just to check for updates.
WebSocket solves this with a persistent, full-duplex channel.