WebSockets Plugging Into The Web Paul Fryer Software Architect Fiserv
What is a WebSocket? Full-duplex bidirectional communication channel. A very low overhead TCP connection. Supported in HTML5 browsers. Cross Domain Capable.
Why WebSockets? Way more faster than Log Polling. Works with firewalls/proxies. Go from kilobytes of data to 2 bytes. Go from 150ms to 50ms latency.
Polling vs. WebSockets Image Source: Kazzing.com
Polling vs. WebSockets Image Source: WebSocket.org
Where is it used? Rich Internet Applications (RIA) Online Games (Farmville) Chat Applications Streaming Applications Financial Data Real Time News Real Time Alerts Analytics (chartbeat)
Pusher Pusher (pusher.com) is a hosted API for quickly, easily and securely adding scalable real-time functionality via WebSockets to web and mobile apps. Example Apps Built on Pusher: http://retrospectiveapp.heroku.com http://jzlabs.com/stuff/marblepaint
The Connection Data is sent in the form of UTF-8 text. Each frame of data starts with 0x00 byte. Each frame of data ends with 0xFF byte. UTF-8 text is in-between the start and ending bytes.
Socket.io Socket IO is a library that supports non WebSocket JS clients. It will leverage websockets if available, but fall back to other transports for earlier browsers. http://socket.io
Kaazing Enterprise Gateway
Building a WebSocket Server .Net web socket server: http://superwebsocket.codeplex.com/ Easy to build your own web socket service on base classes. Comes with an example chat application.
Everyone Go Here: bit.ly/r2a459
Ideas for Financial Industry More responsive user interfaces. Financial Dashboards Corporate Small Business Even Personal Real time reporting. Connected Devices (real time location).