Qu’est-ce que le service Azure SignalR ?What is Azure SignalR Service?

Le service Azure SignalR simplifie le processus d’ajout de fonctionnalités web en temps réel aux applications par HTTP.Azure SignalR Service simplifies the process of adding real-time web functionality to applications over HTTP. Cette fonctionnalité en temps réel permet au service d’envoyer des mises à jour de contenu aux clients connectés, comme une application web ou mobile monopage.This real-time functionality allows the service to push content updates to connected clients, such as a single page web or mobile application. Par conséquent, les clients sont mis à jour sans avoir à interroger le serveur ni à envoyer de nouvelles requêtes HTTP de mise à jour.As a result, clients are updated without the need to poll the server, or submit new HTTP requests for updates.

Cet article fournit une vue d’ensemble du service Azure SignalR.This article provides an overview of Azure SignalR Service.

À quoi sert le service Azure SignalR ?What is Azure SignalR Service used for?

Tout scénario qui nécessite l’envoi (push) de données du serveur au client en temps réel peut utiliser Azure SignalR Service.Any scenario that requires pushing data from server to client in real time, can use Azure SignalR Service.

Les fonctionnalités temps réel traditionnelles souvent interrogées par le serveur peuvent également utiliser le service Azure SignalR Service.Traditional real-time features that often require polling from server, can also use Azure SignalR Service.

Azure SignalR Service a été utilisé dans un large éventail de secteurs d’activité, pour tout type d’application nécessitant des mises à jour de contenu en temps réel.Azure SignalR Service has been used in a wide variety of industries, for any application type that requires real-time content updates. Voici quelques exemples d’utilisation d’Azure SignalR Service :We list some examples that are good to use Azure SignalR Service:

  • Mises à jour haute fréquence de données : jeux, votes, sondages, enchères.High frequency data updates: gaming, voting, polling, auction.
  • Tableaux de bord et surveillance : tableau de bord d’entreprise, données des marchés financiers, mise à jour instantanée des ventes, tableau de bord multijoueurs et surveillance IoT.Dashboards and monitoring: company dashboard, financial market data, instant sales update, multi-player game leader board, and IoT monitoring.
  • Conversation : visioconférence, bot conversationnel, support technique en ligne, assistant d’achat en temps réel, messagerie instantanée, conversation intégrée à un jeu, entre autres.Chat: live chat room, chat bot, on-line customer support, real-time shopping assistant, messenger, in-game chat, and so on.
  • Localisation en temps réel sur une carte : suivi logistique, suivi de l’état de livraison, mises à jour sur l’état de la circulation, applications GPS.Real-time location on map: logistic tracking, delivery status tracking, transportation status updates, GPS apps.
  • Publicités ciblées en temps réel : publicités et offres push en temps réel personnalisées, publicités interactives.Real time targeted ads: personalized real time push ads and offers, interactive ads.
  • Applications collaboratives : rédaction conjointe, applications de tableau blanc et logiciels de réunion d’équipe.Collaborative apps: coauthoring, whiteboard apps and team meeting software.
  • Notifications Push : réseau social, e-mail, jeux, alertes de voyage.Push notifications: social network, email, game, travel alert.
  • Diffusion en temps réel : diffusion audio/vidéo en direct, sous-titrage en direct, traduction, diffusion d’événements/d’actualités.Real-time broadcasting: live audio/video broadcasting, live captioning, translating, events/news broadcasting.
  • IoT et appareils connectés : mesures IoT en temps réel, contrôle à distance, statut en temps réel et suivi de localisation.IoT and connected devices: real-time IoT metrics, remote control, real-time status, and location tracking.
  • Automatisation : déclenchement en temps réel à partir d’événements en amont.Automation: real-time trigger from upstream events.

Quels sont les avantages de l’utilisation d’Azure SignalR Service ?What are the benefits using Azure SignalR Service?

Produit basé sur des normes :Standard based:

SignalR offre une abstraction sur de nombreuses techniques utilisées pour créer des applications web en temps réel.SignalR provides an abstraction over a number of techniques used for building real-time web applications. WebSocket est le mécanisme de transport optimal, mais d’autres techniques comme SSE (Server-Sent Events) et le Long Polling sont utilisées lorsque les autres options ne sont pas disponibles.WebSockets is the optimal transport, but other techniques like Server-Sent Events (SSE) and Long Polling are used when other options aren't available. SignalR détecte automatiquement et initialise le mode de transport adapté en fonction des fonctionnalités prises en charge sur le serveur et le client.SignalR automatically detects and initializes the appropriate transport based on the features supported on the server and client.

Prise en charge native d’ASP.NET Core :Native ASP.NET Core support:

SignalR Service offre une expérience de programmation native avec ASP.NET Core et ASP.NET.SignalR Service provides native programming experience with ASP.NET Core and ASP.NET. Des efforts minimes sont requis pour le développement d’une nouvelle application SignalR avec SignalR Service ou la migration d’une application existante basée sur SignalR vers SignalR Service.Developing new SignalR application with SignalR Service, or migrating from existing SignalR based application to SignalR Service requires minimal efforts. SignalR Service prend également en charge la nouvelle fonctionnalité d’ASP.NET Core, Blazor côté serveur.SignalR Service also supports ASP.NET Core's new feature, Server-side Blazor.

Prise en charge étendue des clients :Broad client support:

SignalR Service fonctionne avec un large éventail de clients, tels que les navigateurs Web et mobiles, les applications de bureau, les applications mobiles, les processus serveur, les appareils IoT et les consoles de jeu.SignalR Service works with a broad range of clients, such as web and mobile browsers, desktop apps, mobile apps, server process, IoT devices, and game consoles. SignalR Service propose des kits de développement logiciel dans des langues différentes.SignalR Service offers SDKs in different languages. En plus des SDK natifs ASP.NET Core ou ASP.NET C#, SignalR Service fournit le SDK client JavaScript, pour activer les clients Web, ainsi que de nombreux frameworks JavaScript.In addition to native ASP.NET Core or ASP.NET C# SDKs, SignalR Service also provides JavaScript client SDK, to enable web clients, and many JavaScript frameworks. Le SDK client Java est également pris en charge pour les applications Java, y compris les applications natives Android.Java client SDK is also supported for Java applications, including Android native apps. SignalR Service prend en charge l’API REST et la technologie serverless en intégrant Azure Functions et Event Grid.SignalR Service supports REST API, and serverless through integrations with Azure Functions and Event Grid.

Gérer les connexions client à grande échelle :Handle large-scale client connections:

SignalR Service est conçu pour les applications temps réel à grande échelle.SignalR Service is designed for large-scale real-time applications. SignalR Service permet à plusieurs instances de travailler ensemble pour s’adapter à des millions de connexions client.SignalR Service allows multiple instances to work together to scale to millions of client connections. Le service prend également en charge de multiples régions globale pour le partitionnement, la haute disponibilité ou la récupération d’urgence.The service also supports multiple global regions for sharding, high availability, or disaster recovery purposes.

Supprimer la nécessité d’auto-héberger SignalR :Remove the burden to self-host SignalR:

Comparé aux applications SignalR hébergées par l’utilisateur, le passage à SignalR Service prend en charge les fonds de panier qui gèrent les ajustements et les connexions client.Compared to self-hosted SignalR applications, switching to SignalR Service will remove the need to manage back planes that handle the scales and client connections. Le service entièrement géré simplifie également les applications web et réduit les coûts d’hébergement.The fully managed service also simplifies web applications and saves hosting cost. SignalR Service offre un centre de données et un réseau de classe mondiale, s’adapte à des millions de connexions, respecte un contrat de niveau de service, tout en assurant la conformité et la sécurité au standard Azure.SignalR Service offers global reach and world-class data center and network, scales to millions of connections, guarantees SLA, while providing all the compliance and security at Azure standard.

SignalR Service managé

Offrir des API riches pour des modèles de messagerie différents :Offer rich APIs for different messaging patterns:

SignalR Service permet au serveur d’envoyer des messages à une connexion en particulier, à toutes les connexions ou à un sous-ensemble de connexions appartenant à un utilisateur spécifique ou qui ont été placées dans un groupe arbitraire.SignalR Service allows the server to send messages to a particular connection, all connections, or a subset of connections that belong to a specific user, or have been placed in an arbitrary group.

Comment utiliser le service Azure SignalRHow to use Azure SignalR Service

Il existe de nombreuses façons de programmer avec Azure SignalR Service, comme le montrent les exemples répertoriés ici :There are many different ways to program with Azure SignalR Service, as some of the samples listed here: