Passer la navigation

Créez facilement des applications en temps réel avec WebSocket et Azure Web PubSub, à présent en préversion

Publié le 29 avril, 2021

Partner Director of Product Management

Les scénarios d’application en temps réel, tels que les conversations lors du streaming de vidéos, les tableaux blancs interactifs pour l’enseignement à distance et les tableaux de bord IoT, deviennent de plus en plus populaires. Les entreprises sont motivées à créer de telles applications pour améliorer l’expérience utilisateur et les interactions en temps réel avec les clients finaux.

Aujourd’hui, nous vous présentons la préversion du service Azure Web PubSub qui permet de créer des applications web en temps réel avec WebSocket. WebSocket est un protocole standardisé qui fournit une communication full-duplex. Ce protocole est essentiel pour créer des interactions web en temps réel efficaces. Par ailleurs, il est pris en charge par tous les principaux navigateurs ainsi que par les serveurs web. Azure Web PubSub vous permet d’utiliser WebSocket et le modèle de publication-abonnement pour créer facilement des applications web en temps réel, telles que des tableaux de bord de surveillance en direct, des conversations en direct sur plusieurs plateformes, une localisation en temps réel sur des cartes, etc.

Scénarios d’usage du service Azure Web PubSub

Figure 1 : Scénarios d’usage du service Azure Web PubSub

Complètement managé, disponible dans le monde entier

Les scénarios en temps réel nécessitent souvent des flux de données à fréquence élevée et de grandes quantités de connexions simultanées entre le client et le serveur. Par exemple, une application financière permettant de visualiser les données du marché peut nécessiter jusqu’à 100 000 connexions et données actives avec une faible latence en millisecondes. Une configuration d’infrastructure non triviale est nécessaire pour que ces fonctionnalités soient opérationnelles à grande échelle. Pour implémenter une expérience en temps réel basée sur WebSocket, un développeur doit d’abord configurer l’infrastructure pour gérer les connexions clientes, établir des mécanismes pour la mettre à l’échelle à la demande et garantir que l’installation est en mesure de répondre aux exigences du contrat SLA de l’entreprise. Cette gestion de l’infrastructure empêche un développeur de se concentrer sur les expériences des utilisateurs finaux et c’est pour cette raison que nous avons créé le service Azure Web PubSub. Le service offre une prise en charge intégrée des connexions clientes à grande échelle et des architectures hautement disponibles. Les développeurs peuvent ainsi se concentrer sur la logique d’application qui fournit des expériences connectées en temps réel. 

Portail Azure Web SubPub

Figure 2 : Service Azure Web PubSub dans le portail Azure

Prise en charge native de WebSocket

Le service Azure Web PubSub prend en charge le protocole WebSocket natif et un large éventail de langages de programmation (notamment C#, Python et Java) via les API WebSocket. Ainsi, vous avez la possibilité de créer des applications multiplateformes en temps réel et de migrer facilement vos applications WebSocket existantes.

Outre la prise en charge brute de WebSocket, ce service offre également le sous-protocole json.webpubsub.azure.v1, qui permet aux clients d’effectuer des publications-abonnements efficacement sans router les données entre le code du serveur de service et du serveur principal. Dans l’exemple de la conversation en direct multiplateforme, le code du serveur principal (une application web ou une fonction) peut avoir besoin d’analyser le message client pour le traitement en langage naturel, l’analyse des sentiments et d’autres fonctionnalités compatibles avec l’intelligence artificielle. En revanche, il n’est pas nécessaire de router les événements d’action (tels que les accusés de lecture) par le biais de l’application ou de la fonction web. Dans ce scénario, le client envoie les événements aux cibles directement par le biais du service Azure Web PubSub à l’aide du sous-protocole.

Applications en temps réel serverless avec Azure Functions

Le service Azure Web PubSub est intégré en mode natif à Azure Functions et vous permet de créer des applications serverless en C#, JavaScript, Python et Java à l’aide du protocole WebSocket. Les solutions serverless pour les applications en temps réel (utilisant Azure Functions et le service Azure Web PubSub) vous permettent d’écrire moins de code, de maintenir une infrastructure moins importante et de réduire les coûts. Prenons l’exemple d’un tableau de bord dynamique de suivi de la localisation. Vous pouvez utiliser Azure Functions pour intégrer et traiter les données de localisation à partir d’appareils IoT, puis tirer parti du service Azure Web PubSub pour diffuser les données de localisation vers plusieurs clients de tableau de bord en direct pour visualiser les informations de localisation en temps réel pour vos clients.

Prise en main d’Azure Web PubSub

Pour en savoir plus sur le service Azure Web PubSub, consultez la page correspondanteet consultez la documentation sur la préversion. Vous pouvez continuer avec un compte Azure gratuit et suivre ce guide de démarrage rapide à l’aide du niveau Gratuit ou Standard d’Azure Web PubSub. Le niveau gratuit est conçu pour le développement et les tests et vous pouvez vous lancer facilement avec une seule unité et créer des applications avec jusqu’à 20 connexions par unité et 20 000 messages par unité et par jour. Consultez nos exemples de code qui illustrent des applications en temps réel que vous pouvez créer avec le service. Nous aimerions recevoir vos commentaires sur le forum de commentaires et nous avons hâte d’améliorer le service en fonction de vos besoins en matière de messagerie web en temps réel. 

Nous avons hâte de voir les applications en temps réel passionnantes que vous allez créer avec le service Azure Web PubSub.