Informazioni sul servizio Azure SignalRWhat is Azure SignalR Service?

Il servizio Azure SignalR semplifica il processo di aggiunta di funzionalità Web in tempo reale alle applicazioni tramite HTTP.Azure SignalR Service simplifies the process of adding real-time web functionality to applications over HTTP. Questa funzionalità in tempo reale consente al servizio di eseguire il push degli aggiornamenti di contenuto ai client connessi, ad esempio un'applicazione Web o per dispositivi mobili a pagina singola.This real-time functionality allows the service to push content updates to connected clients, such as a single page web or mobile application. Di conseguenza, i client vengono aggiornati senza che sia necessario eseguire il polling del server o inviare nuove richieste HTTP per gli aggiornamenti.As a result, clients are updated without the need to poll the server, or submit new HTTP requests for updates.

Questo articolo offre una panoramica del servizio Azure SignalR.This article provides an overview of Azure SignalR Service.

Tipi di utilizzo del servizio Azure SignalRWhat is Azure SignalR Service used for?

Per gli scenari che richiedono il push dei dati dal server al client in tempo reale è possibile usare il servizio Azure SignalR.Any scenario that requires pushing data from server to client in real time, can use Azure SignalR Service.

Anche per le funzionalità in tempo reale tradizionali che spesso richiedono il polling dal server si può usare il servizio Azure SignalR.Traditional real-time features that often require polling from server, can also use Azure SignalR Service.

Il servizio Azure SignalR è stato usato in un'ampia gamma di settori per qualsiasi tipo di applicazione che richiede aggiornamenti del contenuto in tempo reale.Azure SignalR Service has been used in a wide variety of industries, for any application type that requires real-time content updates. Di seguito sono elencati alcuni esempi per i quali è utile usare il servizio Azure SignalR:We list some examples that are good to use Azure SignalR Service:

  • Aggiornamenti dei dati ad alta frequenza: giochi, voti, polling, aste.High frequency data updates: gaming, voting, polling, auction.
  • Dashboard e monitoraggio: dashboard aziendale, dati del mercato finanziario, aggiornamento immediato delle vendite, classifica di giochi multiplayer e monitoraggio IoT.Dashboards and monitoring: company dashboard, financial market data, instant sales update, multi-player game leader board, and IoT monitoring.
  • Chat: live chat room, chatbot, supporto tecnico online, assistente per acquisti in tempo reale, messenger, chat nel gioco e così via.Chat: live chat room, chat bot, on-line customer support, real-time shopping assistant, messenger, in-game chat, and so on.
  • Posizione in tempo reale sulla mappa: rilevamento logistico, verifica dello stato di spedizione, aggiornamenti dello stato di consegna, app GPS.Real-time location on map: logistic tracking, delivery status tracking, transportation status updates, GPS apps.
  • Annunci personalizzati in tempo reale: push di annunci e offerte personalizzate in tempo reale, annunci pubblicitari interattivi.Real time targeted ads: personalized real time push ads and offers, interactive ads.
  • App per la collaborazione: app per la creazione condivisa, app per lavagne e software per riunioni in team.Collaborative apps: coauthoring, whiteboard apps and team meeting software.
  • Notifiche push: social network, posta elettronica, giochi, avvisi di viaggio.Push notifications: social network, email, game, travel alert.
  • Trasmissione in tempo reale: trasmissioni audio/video in diretta, sottotitolatura in diretta, traduzione, trasmissione di eventi/notizie.Real-time broadcasting: live audio/video broadcasting, live captioning, translating, events/news broadcasting.
  • IoT e i dispositivi connessi: metriche IoT in tempo reale, controllo remoto, stato in tempo reale e rilevamento della posizione.IoT and connected devices: real-time IoT metrics, remote control, real-time status, and location tracking.
  • Automazione: trigger in tempo reale da eventi upstream.Automation: real-time trigger from upstream events.

Quali sono i vantaggi dell'uso del servizio Azure SignalR?What are the benefits using Azure SignalR Service?

Basato su standard:Standard based:

SignalR offre un'astrazione su diverse tecniche usate per la compilazione di applicazioni Web in tempo reale.SignalR provides an abstraction over a number of techniques used for building real-time web applications. I WebSocket costituiscono il trasporto ottimale, ma quando non sono disponibili altre opzioni vengono usate altre tecniche come Server-Sent Events (SSE) e il polling prolungato.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 rileva e inizializza automaticamente il trasporto appropriato in base alle funzionalità supportate nel server e nel client.SignalR automatically detects and initializes the appropriate transport based on the features supported on the server and client.

Supporto nativo di ASP.NET Core:Native ASP.NET Core support:

Il servizio SignalR offre un'esperienza di programmazione nativa con ASP.NET Core e ASP.NET.SignalR Service provides native programming experience with ASP.NET Core and ASP.NET. Lo sviluppo di nuove applicazioni SignalR con il servizio SignalR o la migrazione da applicazioni basate su SignalR esistenti al servizio SignalR richiede un impegno minimo.Developing new SignalR application with SignalR Service, or migrating from existing SignalR based application to SignalR Service requires minimal efforts. Il servizio SignalR supporta anche la nuova funzionalità di ASP.NET Core, ovvero Blazor lato server.SignalR Service also supports ASP.NET Core's new feature, Server-side Blazor.

Ampio supporto di client:Broad client support:

Il servizio SignalR supporta un'ampia gamma di client, ad esempio Web browser e browser per dispositivi mobili, app desktop, app per dispositivi mobili, processi del server, dispositivi IoT e console di gioco.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. Il servizio SignalR offre SDK in diverse lingue.SignalR Service offers SDKs in different languages. Oltre agli SDK nativi per ASP.NET Core o ASP.NET C#, il servizio SignalR offre anche JavaScript Client SDK per abilitare i client Web e molti framework 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. Java Client SDK è supportato anche per le applicazioni Java, incluse le app native per Android.Java client SDK is also supported for Java applications, including Android native apps. Il servizio SignalR supporta l'API REST e la modalità serverless tramite le integrazioni con Funzioni di Azure e Griglia di eventi.SignalR Service supports REST API, and serverless through integrations with Azure Functions and Event Grid.

Gestire le connessioni client su larga scala:Handle large-scale client connections:

Il servizio SignalR è progettato per applicazioni in tempo reale su larga scala.SignalR Service is designed for large-scale real-time applications. Il servizio SignalR consente l'interazione di più istanze per poter gestire fino a milioni di connessioni client.SignalR Service allows multiple instances to work together to scale to millions of client connections. Il servizio supporta anche più aree globali per il partizionamento orizzontale, la disponibilità elevata o il ripristino di emergenza.The service also supports multiple global regions for sharding, high availability, or disaster recovery purposes.

Rimuovere il carico di lavoro per il self-hosting di SignalR:Remove the burden to self-host SignalR:

Rispetto alle applicazioni self-hosted di SignalR, il passaggio al servizio SignalR rimuoverà la necessità di gestire piani di backup per tenere conto di scalabilità e connessioni 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. Il servizio completamente gestito, inoltre, semplifica le applicazioni Web e consente di risparmiare sui costi di hosting.The fully managed service also simplifies web applications and saves hosting cost. Il servizio SignalR offre una portata globale e data center e rete di altissimo livello, può essere esteso fino a supportare milioni di connessioni, garantisce il contratto di servizio e soddisfa allo stesso tempo i requisiti standard di conformità e sicurezza di 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.

Servizio SignalR gestito

API avanzate per modelli di messaggistica diversi:Offer rich APIs for different messaging patterns:

Il servizio SignalR consente al server di inviare messaggi a una determinata connessione, a tutte le connessioni o a un subset di connessioni che appartengono a un utente specifico o sono state inserite in un gruppo arbitrario.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.

Modalità di utilizzo del servizio Azure SignalRHow to use Azure SignalR Service

Esistono molti modi diversi per programmare con il servizio Azure SignalR, come alcuni degli esempi elencati di seguito:There are many different ways to program with Azure SignalR Service, as some of the samples listed here: