Azure Web PubSub

  • Author: Ronald Fung

  • Creation Date: 31 May 2023

  • Next Modified Date: 31 May 2024


A. Introduction

The Azure Web PubSub Service helps you build real-time messaging web applications using WebSockets and the publish-subscribe pattern easily. This real-time functionality allows publishing content updates between server and connected clients (for example a single page web application or mobile application). The clients do not need to poll the latest updates, or submit new HTTP requests for updates.

This article provides an overview of Azure Web PubSub service.

What is Azure Web PubSub service used for?

Any scenario that requires real-time publish-subscribe messaging between server and clients or among clients, can use Azure Web PubSub service. Traditional real-time features that often require polling from server or submitting HTTP requests, can also use Azure Web PubSub service.

Azure Web PubSub service can be used in any application type that requires real-time content updates. We list some examples that are good to use Azure Web PubSub service:

  • High frequency data updates: gaming, voting, polling, auction.

  • Live dashboards and monitoring: company dashboard, financial market data, instant sales update, multi-player game leader board, and IoT monitoring.

  • Cross-platform live chat: live chat room, chat bot, on-line customer support, real-time shopping assistant, messenger, in-game chat, and so on.

  • Real-time location on map: logistic tracking, delivery status tracking, transportation status updates, GPS apps.

  • Real-time targeted ads: personalized real-time push ads and offers, interactive ads.

  • Collaborative apps: coauthoring, whiteboard apps and team meeting software.

  • Push instant notifications: social network, email, game, travel alert.

  • Real-time broadcasting: live audio/video broadcasting, live captioning, translating, events/news broadcasting.

  • IoT and connected devices: real-time IoT metrics, remote control, real-time status, and location tracking.

  • Automation: real-time trigger from upstream events.


B. How is it used at Seagen

As a biopharma research company that uses Microsoft Azure, Azure Web PubSub can be used to create real-time web applications that can handle high-volume, low-latency messaging scenarios. Here are some ways that Seagen can use Azure Web PubSub:

  1. Real-time communication: Azure Web PubSub allows you to create real-time communication scenarios between clients and servers, which can be useful for creating real-time dashboards, live chat applications, and other types of real-time applications.

  2. Scalability: Azure Web PubSub is designed to scale to handle high-volume, low-latency messaging scenarios, which can be useful for businesses that need to handle large amounts of data in real-time.

  3. Easy integration: Azure Web PubSub can be easily integrated with other Azure services, such as Azure Functions, Azure Logic Apps, and Azure Event Grid, allowing you to create powerful and scalable real-time applications.

  4. Cross-platform support: Azure Web PubSub supports multiple programming languages and platforms, including .NET, Java, Node.js, and Python, making it easy to use with your existing software stack.

  5. Security: Azure Web PubSub provides built-in security features, including authentication and access control, to help ensure that your real-time applications are secure.

  6. Cost-effective: Azure Web PubSub is a cost-effective solution for creating real-time applications, as it does not require any additional hardware or software.

Overall, Azure Web PubSub is a powerful tool for creating real-time web applications that can handle high-volume, low-latency messaging scenarios. Its ability to provide real-time communication, scalability, easy integration, cross-platform support, security, and cost-effectiveness make it an ideal solution for businesses looking to create real-time applications in the cloud.


C. Features

Azure Web PubSub is a cloud-based service that provides real-time messaging capabilities for web applications. Here are some of the key features of Azure Web PubSub:

  1. Real-time messaging: Azure Web PubSub allows you to create real-time messaging scenarios between clients and servers, enabling real-time communication between web applications.

  2. Scalability: Azure Web PubSub is designed to scale to handle high-volume, low-latency messaging scenarios, making it a powerful tool for businesses that need to handle large amounts of data in real-time.

  3. Easy integration: Azure Web PubSub can be easily integrated with other Azure services, such as Azure Functions, Azure Logic Apps, and Azure Event Grid, allowing you to create powerful and scalable real-time applications.

  4. Cross-platform support: Azure Web PubSub supports multiple programming languages and platforms, including .NET, Java, Node.js, and Python, making it easy to use with your existing software stack.

  5. Security: Azure Web PubSub provides built-in security features, including authentication and access control, to help ensure that your real-time applications are secure.

  6. Cost-effective: Azure Web PubSub is a cost-effective solution for creating real-time applications, as it does not require any additional hardware or software.

  7. Serverless: Azure Web PubSub is a serverless service, which means that you do not need to worry about managing servers or infrastructure to support your real-time applications.

  8. Global availability: Azure Web PubSub is a globally available service, which means that you can create real-time applications that can be accessed from anywhere in the world.

  9. Low latency: Azure Web PubSub is designed to provide low latency messaging capabilities, which means that your real-time applications can deliver near-instantaneous updates to clients.

Overall, Azure Web PubSub is a powerful tool for creating real-time web applications that can handle high-volume, low-latency messaging scenarios. Its ability to provide real-time messaging, scalability, easy integration, cross-platform support, security, cost-effectiveness, serverless architecture, global availability, and low latency messaging capabilities make it an ideal solution for businesses looking to create real-time applications in the cloud.


D. Where Implemented

LeanIX


E. How it is tested

Testing Azure Web PubSub involves verifying that real-time messaging is properly configured and functioning as expected. Here are some steps you can take to test Azure Web PubSub:

  1. Verify configuration: Verify that Azure Web PubSub is properly configured and integrated with your web applications.

  2. Test real-time messaging: Test Azure Web PubSub by sending messages between clients and servers, and verifying that they are received in real-time.

  3. Test scalability: Test the scalability of Azure Web PubSub by sending messages at high volumes and verifying that they are delivered in real-time without any delays.

  4. Test integration: Test the integration of Azure Web PubSub with other Azure services, such as Azure Functions, Azure Logic Apps, and Azure Event Grid, by verifying that messages are properly received and processed by these services.

  5. Test cross-platform support: Test the cross-platform support of Azure Web PubSub by using multiple programming languages and platforms, such as .NET, Java, Node.js, and Python, to verify that messages are properly received and processed.

  6. Test security: Test the security of Azure Web PubSub by verifying that messages are properly authenticated and that access control policies are enforced.

  7. Test cost-effectiveness: Test the cost-effectiveness of Azure Web PubSub by monitoring usage and verifying that the service is cost-effective for your business.

Overall, testing Azure Web PubSub involves verifying that real-time messaging is properly configured and functioning as expected, testing scalability, integration, cross-platform support, security, cost-effectiveness, and monitoring usage to ensure that the service is meeting the needs of your business. By testing Azure Web PubSub, you can ensure that your real-time applications are effectively using the service and that your business is benefiting from the real-time messaging capabilities it provides.


F. 2023 Roadmap

????


G. 2024 Roadmap

????


H. Known Issues

As with any software, there may be known issues or limitations that users should be aware of when using Azure Web PubSub. Here are some of the known issues for Azure Web PubSub:

  1. Limited customization: Azure Web PubSub may have limited customization options, which can limit the ability of users to create custom messaging scenarios.

  2. Performance issues: Azure Web PubSub may experience performance issues when processing large amounts of real-time messaging, which can impact the overall performance of your web applications.

  3. Compatibility issues: Azure Web PubSub may have compatibility issues with certain web applications or programming languages, which can limit the ability of users to use the service with their existing software stack.

  4. Cost: Azure Web PubSub may be more expensive than other real-time messaging solutions, which can be a factor for businesses with limited budgets.

  5. Complexity: Azure Web PubSub can be complex to configure and manage, which may require additional training and support for users.

  6. Network latency: Azure Web PubSub may be affected by network latency, which can impact the speed and reliability of real-time messaging.

Overall, while Azure Web PubSub is a powerful tool for creating real-time web applications, users must be aware of these known issues and take steps to mitigate their impact. This may include carefully selecting web applications and programming languages that are compatible with Azure Web PubSub, carefully configuring the service to meet the specific needs of their business, providing training and support to users to effectively use and manage Azure Web PubSub, and carefully evaluating the cost and complexity of the solution to ensure that it is a good fit for their business.


[x] Reviewed by Enterprise Architecture

[x] Reviewed by Application Development

[x] Reviewed by Data Architecture