Azure Web PubSub
Azure Web PubSub:
Agenda:
Azure Web PubSubCore Patterns for Microsoft Azure
Overview & Common Use Cases
Available SKUs and what is being unblocked?
Use Cases & Recommended Architecture
Demo
Q & A/ Links to Documentation
Azure Web PubSub –Overview
Azure Web PubSub service is a bi-directional messaging service that helps you build real-time messaging web applications using WebSocketsand the publish-subscribe pattern
Built-in support for large-scale client connections and highly available architectures
Support for a wide variety of client SDKs and programming languages
Offer rich APIs for different messaging patterns
How to use the Azure PubSub service?
Build serverless real-time applications:
Use Azure Functions' integration with Azure Web PubSub service to build serverless real-time applications in languages such as JavaScript, C#, Java and Python.
Send messages from server to clients via REST API:
Azure Web PubSub service provides REST API to enable applications to post messages to clients connected, in any REST capable programming languages.
Azure Web PubSub –Concepts and Key Features
•Service: Azure Web PubSub Service.
•Hub: A logic isolation for one application. Different applications can share one Azure Web PubSub service by using different hub names.
•Group: Clients can join a group, leave a group, or publish messages to a group. A client can join multiple groups, and a group can contain multiple clients.
•Client Connection and ConnectionId: A client connects to the client endpoint, when connected, a unique connectionIdis generated by the service as the unique identity of the client connection. Users can then manage the client connection using this connectionId. Details are described in Client Protocol section.
•Client Events: Events are created during the lifecycle of a client connection. For example, a simple WebSocket client connection creates a connect event when it tries to connect to the service, a connected event when it successfully connected to the service, a message event when it sends messages to the service and a disconnected event when it disconnects from the service. Details about client events are illustrated in Client Protocol section.
•Event Handler: The event handler contains the logic to handle the client events. Event handler needs to be registered and configured in the service through the portal or Azure CLI beforehand.
•Server: The server can handle client events, manage client connections, and publish messages to groups.
Azure Web PubSub –Event Workflow
•A client connects to the service /client endpoint using WebSocket transport. Service forward every WebSocket frame to the configured upstream(server).
•The WebSocket connection can connect with any custom subprotocol for the server to handle
•It can also connect with the service-supported subprotocol json.webpubsub.azure.v1 which empowered the clients to do pub/sub directly.
•The service invokes the server using CloudEventsHTTP protocol on different client events. CloudEventsis a standardized and protocol-agnostic definition of the structure and metadata description of events hosted by the Cloud Native Computing Foundation (CNCF).
•Server can invoke the service using REST API to send messages to clients or to manage the connected clients.
Azure Web PubSub –Client/Server Sequence Diagram
Web PubSub –Standard SKU (Architecture Diagram –No Server, Private Access Only)
Azure Web PubSubFrequently Asked Question (FAQs) for Application Teams
•What is the GA timeline for this service?
•The service is now General Available (GA)
•Can I use custom domain names for my Web PubSub instance?
•Not at the moment. This feature is on the product roadmap.
•Does Azure Web PubSub support HTTP/2?
•Yesit does support HTTP/2.
•Can I use Azure Application Gateway with Azure Web PubSub for traffic coming from internet ?
•Yes, it is supported.
•Does Azure Web PubSub support Managed Identity?
•Yes, it supports both System managed Identity and User Managed Identity
Comments
Post a Comment