Aplikace v reálném čase se službou Azure SignalR a Azure Functions
Služby Azure SignalR v kombinaci se službou Azure Functions umožňují spouštět webové aplikace pro zasílání zpráv v reálném čase v bezserverovém prostředí. Tento článek obsahuje přehled o tom, jak služby spolupracují.
Služba Azure SignalR a Azure Functions jsou plně spravované a vysoce škálovatelné služby. Umožňují soustředit se na vytváření aplikací místo správy infrastruktury. Tyto dvě služby se běžně používají k poskytování komunikace v reálném čase v bezserverovém prostředí.
Integrace komunikace v reálném čase do služeb Azure
Služba Azure Functions umožňuje psát kód v několika jazycích, včetně JavaScriptu, Pythonu, C# a Javy, která se aktivuje při každém výskytu událostí v cloudu. Příklady těchto událostí:
- HTTP a webhookové požadavky
- Pravidelné časovače
- Události ze služeb Azure, například:
- Event Grid
- Event Hubs
- Service Bus
- Kanál změn ve službě Azure Cosmos DB
- Objekty blob a fronty úložiště
- Konektory Logic Apps jako například Salesforce a SQL Server
Použitím služby Azure Functions k integraci těchto událostí do služby Azure SignalR získáte možnost oznámit tisícům klientů, že došlo k události.
Mezi běžné scénáře bezserverového zasílání zpráv v reálném čase, které můžete implementovat s Azure Functions a službou SignalR, patří:
- Vizualizace telemetrie zařízení IoT na řídicím panelu nebo mapě v reálném čase
- Aktualizace dat v aplikaci při aktualizaci dokumentů ve službě Azure Cosmos DB
- Odesílání oznámení v aplikaci při vytváření nových objednávek v Salesforce
Vazby služby SignalR pro Azure Functions
Vazby služby SignalR pro Azure Functions umožňují aplikaci Azure Functions publikovat zprávy klientům připojeným ke službě SignalR. Klienti se k této službě mohou připojit pomocí klientské sady SDK pro SignalR, která je k dispozici v jazycích .NET, JavaScript a Java (další jazyky brzy přibudou).
Ukázkový scénář
Použití azure Functions k integraci se službou Azure Cosmos DB je příkladem použití vazeb služby SignalR k odesílání zpráv v reálném čase, když se nové události objeví v kanálu změn služby Azure Cosmos DB.
- V kolekci Azure Cosmos DB se provede změna.
- Událost změny se rozšíří do kanálu změn služby Azure Cosmos DB.
- Trigger služby Azure Cosmos DB aktivuje funkci Azure Functions v reakci na událost změny.
- Výstupní vazba služby SignalR Service publikuje zprávu do služby SignalR.
- Služba SignalR publikuje zprávu všem připojeným klientům.
Ověřování a uživatelé
Služba SignalR umožňuje vysílat zprávy všem nebo podmnožině klientů, jako jsou ty, které patří jednomu uživateli. Vazby služby SignalR pro Azure Functions můžete kombinovat s ověřováním služby App Service a ověřovat uživatele pomocí poskytovatelů, jako je Microsoft Entra ID, Facebook a X. Pak můžete posílat zprávy přímo těmto ověřeným uživatelům.
Další kroky
Úplné podrobnosti o tom, jak používat Azure Functions a službu SignalR, najdete v následujících zdrojích informací:
- Vývoj a konfigurace služby Azure Functions se službou SignalR
- Povolení automatických aktualizací ve webové aplikaci pomocí Azure Functions a služby SignalR
Pokud si chcete vyzkoušet vazby služby SignalR pro Azure Functions, přečtěte si: