This week we look at real-time technologies and how these technologies are bringing improved connectivity to, and therefore availability of, live data. This means that healthcare professionals can now view real-time data on the move or on demand, giving them vital additional time to make life dependent decisions.
We look at one of the technologies that will make this possible, the WebSockets protocol and API.
Accuracy, availability and predictability
In our article on 06/03/12 (here) we looked at how new technologies are able to improve healthcare services, by improving accuracy, availability and predictability. These technologies allow immediate communication between a wide variety of devices (platforms) in real-time, giving users instant access through the web to information such as ECG and oximetry, chat and video conference, which makes them perfect for telehealthcare and remote monitoring.
But there are very few real time cross platform applications at present and healthcare has been very slow to adopt them because of issues when using the standard communications protocols, problems such as connectivity, security, speed and distribution (installing on computers). The standard client/server application platforms don’t really cut the mustard for this type of application because they have to repeatedly request large amounts of data from the server, making them very slow and almost impossible to maintain a live connection without huge bandwidth and overhead.
The web-sockets protocol and API
The web sockets specification allows upstream and downstream communications through a single socket over the web, hugely reducing the amount of traffic required to transfer data from one location to another. The web application sends a handshake request to the WebSocket server and quickly establishes a secure encrytped connection for the communication of data between source and destination. The data can be exchanged in full duplex mode, in other words in both directions and the connection remains open for all data exchanges.
What advantages does this bring?
Communication using web technologies has been based on ‘request/response’ – in other words the client (Internet browser such as Internet Explorer or Firefox) requests a web page or information and nothing else happens until the user requests something else (another web page). WebSockets technology means that once the connection has been made to create a ‘tunnel’, the data can be freely exchanged whenever available, reducing the ‘overhead’ of constantly requesting, opening the connection, receiving and closing the connection again. This means a much faster, less resource hungry solution.
How can applications be developed to take advantage of this?
Once a WebSockets server or gateway has been created, a web application can be developed on a compatible development platform (such as Java) and configured to communicate with the server. Development on a ‘web’ platform also has it’s advantages:
It needs no time consuming roll out or installation (it just works)
It shouldn’t conflict with your existing software (so compatible provided the browser is compatible)
It’s available over a number of different devices provided they have access to the Internet
It has a secure encrypted connection (uses HTTPS) The technology is relatively new but has recently been standardised which means it is now widely recognised as the agreed standard for realtime communication between client and server, finding experienced WebSockets developers however is very difficult.