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.
- Er wordt een wijziging aangebracht in een Azure Cosmos DB-verzameling.
- De wijzigingsgebeurtenis wordt doorgegeven aan de Azure Cosmos DB-wijzigingenfeed.
- De Azure Cosmos DB-trigger activeert een Azure-functie als reactie op de wijzigings gebeurtenis.
- De SignalR Service-uitvoerbinding publiceert een bericht naar SignalR Service.
- 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 X. Vervolgens kunt u berichten rechtstreeks naar deze geverifieerde gebruikers verzenden.
Volgende stappen
Ga naar de volgende resources voor meer informatie over het gebruik van Azure Functions en SignalR Service:
- Azure Functions-ontwikkeling en -configuratie met SignalR Service
- Automatische updates inschakelen in een webtoepassing met behulp van Azure Functions en SignalR Service
Als u de SignalR Service-bindingen voor Azure Functions wilt uitproberen, raadpleegt u: