Share via


App in tempo reale con Servizio Azure SignalR e Funzioni di Azure

Servizio Azure SignalR combinati con Funzioni di Azure consente di eseguire app Web di messaggistica in tempo reale in un ambiente serverless. Questo articolo offre una panoramica del funzionamento dei servizi.

Servizio Azure SignalR e Funzioni di Azure sono entrambi servizi completamente gestiti e altamente scalabili. Consentono di concentrarsi sulla creazione di applicazioni anziché sulla gestione dell'infrastruttura. È comune usare i due servizi insieme per fornire comunicazioni in tempo reale in un ambiente serverless .

Integrare le comunicazioni in tempo reale con i servizi di Azure

Il servizio Funzioni di Azure consente di scrivere codice in diversi linguaggi, tra cui JavaScript, Python, C# e Java che si attiva ogni volta che si verificano eventi nel cloud. Esempi di questi eventi:

  • Richieste dei webhook e HTTP
  • Timer periodici
  • Eventi dei servizi di Azure, ad esempio:
    • Griglia di eventi
    • Hub eventi di
    • Bus di servizio
    • Feed di modifiche di Azure Cosmos DB
    • Archiviazione BLOB e code
    • Connettori di App per la logica, ad esempio Salesforce e SQL Server

Usando Funzioni di Azure per integrare questi eventi con il servizio Azure SignalR, si ha la possibilità di inviare una notifica a migliaia di client ogni volta che si verificano eventi.

Alcuni scenari comuni per la messaggistica serverless in tempo reale implementabili con Funzioni di Azure e il servizio SignalR includono:

  • Visualizzare i dati di telemetria dei dispositivi IoT in un dashboard o una mappa in tempo reale.
  • Aggiornare i dati in un'applicazione quando i documenti vengono aggiornati in Azure Cosmos DB.
  • Inviare notifiche in-app quando vengono creati nuovi ordini in Salesforce.

Associazioni del servizio SignalR per Funzioni di Azure

Le associazioni del servizio SignalR per Funzioni di Azure consentono a un'app di Funzioni di Azure di pubblicare i messaggi ai client connessi al servizio SignalR. I client possono connettersi al servizio usando un client SDK di SignalR che è disponibile in .NET, JavaScript e Java e in altri linguaggi presto disponibili.

Scenario di esempio

L'uso di Funzioni di Azure per l'integrazione con Azure Cosmos DB è un esempio di utilizzo delle associazioni Servizio SignalR per inviare messaggi in tempo reale quando vengono visualizzati nuovi eventi in un feed di modifiche di Azure Cosmos DB.

Azure Cosmos DB, Funzioni di Azure, Servizio SignalR

  1. Viene apportata una modifica in una raccolta di Azure Cosmos DB.
  2. L'evento di modifica viene propagato al feed di modifiche di Azure Cosmos DB.
  3. Il trigger di Azure Cosmos DB attiva una funzione di Azure in risposta all'evento di modifica.
  4. L'associazione di output Servizio SignalR pubblica un messaggio in Servizio SignalR.
  5. Il Servizio SignalR pubblica il messaggio in tutti i client connessi.

Autenticazione e utenti

Servizio SignalR consente di trasmettere messaggi a tutti o a un subset di client, ad esempio quelli appartenenti a un singolo utente. È possibile combinare le associazioni Servizio SignalR per Funzioni di Azure con l'autenticazione servizio app per autenticare gli utenti con provider come Microsoft Entra ID, Facebook e Twitter. È quindi possibile inviare messaggi direttamente a questi utenti autenticati.

Passaggi successivi

Per informazioni dettagliate su come usare Funzioni di Azure e Servizio SignalR insieme, visitare le risorse seguenti:

Per provare le associazioni Servizio SignalR per Funzioni di Azure, vedere: