Share via


Realtime-apps met Azure SignalR Service en Azure Functions

Met Azure SignalR Services in combinatie met Azure Functions kunt u realtime berichtenweb-apps uitvoeren in een serverloze omgeving. Dit artikel bevat een overzicht van hoe de services samenwerken.

Azure SignalR Service en Azure Functions zijn beide volledig beheerde, zeer schaalbare services. Hiermee kunt u zich richten op het bouwen van toepassingen in plaats van het beheren van infrastructuur. Het is gebruikelijk om de twee services samen te gebruiken om realtime communicatie te bieden in een serverloze omgeving.

Realtimecommunicatie integreren met Azure-services

Met de Azure Functions-service kunt u code schrijven in verschillende talen, waaronder JavaScript, Python, C# en Java die worden geactiveerd wanneer er gebeurtenissen plaatsvinden in de cloud. Voorbeelden van deze gebeurtenissen zijn:

  • HTTP- en webhook-aanvragen
  • Periodieke timers
  • Gebeurtenissen van Azure-services, zoals:
    • Event Grid
    • Event Hubs
    • Service Bus
    • Azure Cosmos DB-wijzigingenfeed
    • Opslagblobs en wachtrijen
    • Logic Apps-connectoren, zoals Salesforce en SQL Server

Als u Azure Functions gebruikt om deze evenementen met Azure SignalR-service te integreren, hebt u de mogelijkheid om duizenden clients te informeren als zich gebeurtenissen voordoen.

Sommige veelvoorkomende scenario’s voor serverloze berichten in realtime die u met Azure Functions en SignalR-service kunt implementeren, zijn:

  • Visualiseer telemetrie van IoT-apparaten op een realtime dashboard of kaart.
  • Gegevens in een toepassing bijwerken wanneer documenten worden bijgewerkt in Azure Cosmos DB.
  • In-app-meldingen verzenden wanneer nieuwe orders worden gemaakt in Salesforce.

SignalR-servicebindingen voor Azure Functions

Met de SignalR-servicebindingen voor Azure Functions kan een Azure Function-app worden toegestaan om berichten te publiceren voor clients die met de SignalR-service zijn verbonden. Clients kunnen verbinding met de service maken via een SDK voor SignalR-clients die beschikbaar is in .NET, JavaScript en Jave; er worden binnenkort meer talen toegevoegd.

Een voorbeeldscenario

Het gebruik van Azure Functions om te integreren met Azure Cosmos DB is een voorbeeld van het gebruik van de SignalR Service-bindingen om realtime berichten te verzenden wanneer nieuwe gebeurtenissen worden weergegeven in een Azure Cosmos DB-wijzigingenfeed.

Azure Cosmos DB, Azure Functions, SignalR Service

  1. Er wordt een wijziging aangebracht in een Azure Cosmos DB-verzameling.
  2. De wijzigingsgebeurtenis wordt doorgegeven aan de Azure Cosmos DB-wijzigingenfeed.
  3. De Azure Cosmos DB-trigger activeert een Azure-functie als reactie op de wijzigings gebeurtenis.
  4. De SignalR Service-uitvoerbinding publiceert een bericht naar SignalR Service.
  5. De SignalR-service publiceert het bericht naar alle verbonden clients.

Verificatie en gebruikers

Met SignalR Service kunt u berichten uitzenden naar alle of een subset van clients, zoals clients die tot één gebruiker behoren. U kunt de SignalR Service-bindingen voor Azure Functions combineren met App Service-verificatie om gebruikers te verifiëren bij providers zoals Microsoft Entra ID, Facebook en Twitter. U kunt vervolgens rechtstreeks berichten naar deze geverifieerde gebruikers verzenden.

Volgende stappen

Ga naar de volgende resources voor meer informatie over het gebruik van Azure Functions en SignalR Service:

Als u de SignalR Service-bindingen voor Azure Functions wilt uitproberen, raadpleegt u: