Real-time use cases such as chat to stream videos, interactive whiteboards for remote training, and IoT dashboards are becoming increasingly popular. Organizations want to build such applications for improved user experience and real-time interaction with end customers.
Today we announce the preview of the Azure Web PubSub service for Build real-time web applications with WebSockets. WebSocket is a standardized protocol that provides full duplex communication. It is the key to building efficient real-time web interactions and is supported by all major browsers and web servers. With Azure Web PubSub, you can use WebSockets and the publish-subscribe pattern to easily create real-time web applications such as live monitoring dashboards, cross-platform live chat, real-time location on maps, and more.
Figure 1: Usage scenarios for Azure Web PubSub services
Fully managed, available worldwide
Real-time scenarios often require high-frequency data flows and large numbers of simultaneous connections between client and server. For example, a finance app to visualize market data may require up to 100,000 connections and live data with low latency in milliseconds. A non-trivial infrastructure setup is required to get these functions up and running on a large scale. To implement a WebSocket-based real-time experience, a developer would first need to set up an infrastructure to handle client connections, set up mechanisms to scale as needed, and ensure that the setup meets business SLA requirements. This infrastructure management takes the time for developers to focus on end-user experiences, and we designed the Azure Web PubSub service to address this issue. The service provides built-in support for large client connections and high availability architectures, so developers can focus on the application logic that provides real-time connected experiences.
Figure 2: Azure Web PubSub service in the Azure portal
Native WebSocket support
The Azure Web PubSub service supports native WebSocket and a variety of programming languages (including C #, Python, and Java) through WebSocket APIs. This gives you the flexibility to build real-time cross-platform applications and easily migrate your existing WebSocket-based applications.
In addition to unformatted WebSocket support, this service also provides the json.webpubsub.azure.v1 sub-protocol, which clients can use to effectively publish-subscribe without passing data between the service and backend server code. Using the cross-platform live chat example, the backend server code (a web app or function) may need to parse the client message for natural language processing, sentiment analysis, and other AI-enabled functions. On the other hand, action events (e.g. read receipt) do not have to be forwarded via the web app or function. In this scenario, the client sends the events to destinations directly through the Azure Web PubSub service using the sub-protocol.
Serverless real-time applications with Azure functions
Get started with Azure Web PubSub
For more information on the Azure Web PubSub service, see Azure Web PubSub service pageand check out the Documentation preview. You can get started with a free Azure account, and you can Follow this quick start Use the free or standard tier of Azure Web PubSub. The free tier is designed for developer / test, so you can easily start with one unit and build applications with up to 20 connections per unit and 20,000 messages per unit per day. Check out ours Code samples to showcase some real-time apps that you can build with the service. We’d love to hear from you Feedback forum and look forward to improving the service for your real-time web messaging needs.
We can’t wait to see the exciting real-time apps you create with the Azure Web PubSub service!