Web Sockets are set to revolutionize the way the "real time web" works, today most websites use AJAX as a way to fake a real time dynamic experience... think a stream of Twitter tweets popping up relating to a current event. AJAX approaches that try to get to the "real time" end are similar to a kid riding in the back seat on a long driving vaction with their parents "Are we there yet?... Are we there now?... How about now?" constantly pinging their data sources asking if something changed. Web Sockets aim to change all that and simplify it for web users and developers across all web browsers and devices that contain them think Mobile devices, televisions, nearly anything with a screen in the future... you have to love open standards!
The Web Sockets API creates real time two way communications between a server and the end user allowing streaming of information back and forth just like a desktop application in real time without the waste of the current AJAX approach either checking too often when nothing has changed or potentially missing a new message between its checks the Web Socket will only transfer data when needed.
Well... Are we there yet?
We are not quite there yet, Web Sockets will require support on the server side and the client side but in my view both are progressing nicely. Here is a run down of the early Web Socket server side tool kits I could find.
- http://github.com/gimite/web-socket-js (Powered by Flash as a fallback)
I think I've heard of this before... Is this new?
There are many players in this space trying to make real time information to the browser possible some names you may have heard are Comet, Ajax Push, and Ajax long polling (as I discussed earlier). I found a great post for the more technical among us that helps you decipher the differences in these protocols for further reading on the topic.
Posted from AppliedHTML5