Co to jest usługa Azure SignalR Service?
Usługa Azure SignalR Service upraszcza proces dodawania funkcji internetowych w czasie rzeczywistym do aplikacji za pośrednictwem protokołu HTTP. Ta funkcja w czasie rzeczywistym umożliwia usłudze wypychanie aktualizacji zawartości do połączonych klientów, takich jak pojedyncza strona internetowa lub aplikacja mobilna. W związku z tym klienci otrzymują aktualizacje bez konieczności sondowania serwera czy przesyłania nowych żądań HTTP o aktualizacje.
Ten artykuł zawiera omówienie usługi Azure SignalR Service.
Do czego służy usługa Azure SignalR Service?
Każdy scenariusz, który wymaga wypychania danych z serwera do klienta w czasie rzeczywistym, może korzystać z usługi Azure SignalR Service.
Tradycyjne funkcje czasu rzeczywistego, które często wymagają sondowania z serwera, mogą również używać usługi Azure SignalR Service.
Usługa Azure SignalR Service jest używana w wielu różnych branżach dla każdego typu aplikacji, który wymaga aktualizacji zawartości w czasie rzeczywistym. Oto kilka przykładów, w których można użyć usługi Azure SignalR Service:
- Aktualizacje danych o wysokiej częstotliwości: gry, głosowania, sondowania i aukcji.
- Pulpity nawigacyjne i monitorowanie: pulpity nawigacyjne firmy, dane rynku finansowego, natychmiastowe aktualizacje sprzedaży, wieloosobowe tablice liderów gier i monitorowanie IoT.
- Czat: czaty na żywo, czatboty, pomoc techniczna online, asystentów zakupów w czasie rzeczywistym, komunikatorów i czatów w grze.
- Lokalizacja w czasie rzeczywistym na mapie: śledzenie logistyczne, śledzenie stanu dostawy, aktualizacje stanu transportu i aplikacje GPS.
- Reklamy ukierunkowane w czasie rzeczywistym: spersonalizowane reklamy wypychane i oferty wypychane w czasie rzeczywistym oraz interaktywne reklamy.
- Aplikacje do współpracy: współtworzenie, aplikacje tablicy i oprogramowanie do spotkań zespołowych.
- Powiadomienia wypychane: sieci społecznościowe, poczta e-mail, gry i alert podróży.
- Transmisje w czasie rzeczywistym: transmisje audio/wideo na żywo, podpis na żywo, tłumaczenie i wydarzenia oraz transmisje wiadomości.
- Urządzenia IoT i połączone: metryki IoT w czasie rzeczywistym, zdalne sterowanie, stan czasu rzeczywistego i śledzenie lokalizacji.
- Automatyzacja: wyzwalacze w czasie rzeczywistym ze zdarzeń nadrzędnych.
Jakie są korzyści wynikające z korzystania z usługi Azure SignalR Service?
Oparte na warstwie Standardowa:
Usługa SignalR zapewnia abstrakcję wielu technik używanych do tworzenia aplikacji internetowych w czasie rzeczywistym. Protokół WebSockets stanowi optymalną metodę transportu, ale inne techniki, takie jak Server-Sent Events (SSE) i Long Polling są używane, gdy nie są dostępne inne opcje. Biblioteka SignalR automatycznie wykrywa i inicjuje odpowiednią metodę transportu na podstawie funkcji obsługiwanych przez serwer i klienta.
Natywna obsługa ASP.NET Core:
Usługa SignalR Service zapewnia natywne środowisko programowania z ASP.NET Core i ASP.NET. Tworzenie nowych aplikacji SignalR za pomocą usługi SignalR Service lub migrowanie z istniejących aplikacji opartych na usłudze SignalR Service do usługi SignalR Service wymaga minimalnego nakładu pracy. Usługa SignalR Service obsługuje również nową funkcję platformy Blazor po stronie serwera ASP.NET Core.
Obsługa szerokiego klienta:
Usługa SignalR Service współpracuje z szeroką gamą klientów, takich jak:
- przeglądarki internetowe i mobilne
- aplikacje klasyczne
- Office 2016
- Urządzenia IoT
- Konsole
Obsługa wielu języków:
Usługa SignalR Service oferuje zestawy SDK w różnych językach:
- Po stronie klienta: wszystkie biblioteki klienckie obsługujące protokół SignalR są zgodne z usługą SignalR.
- Strona serwera: ASP.NET Core lub aplikacje internetowe ASP.NET
- Obsługa bezserwerowa za pośrednictwem interfejsów API REST, wyzwalaczy i powiązań usługi Azure Functions oraz integracji usługi Event Grid dla usługi ASP.NET Core SignalR.
Obsługa połączeń klientów na dużą skalę:
Usługa SignalR Service jest przeznaczona dla aplikacji w czasie rzeczywistym na dużą skalę. Usługa SignalR Service umożliwia współdziałanie wielu wystąpień w celu skalowania do milionów połączeń klientów. Usługa obsługuje również wiele regionów globalnych na potrzeby fragmentowania, wysokiej dostępności lub odzyskiwania po awarii.
Usuń obciążenie dla własnego hosta SignalR:
W porównaniu z własnymi aplikacjami SignalR przełączenie do usługi SignalR Service spowoduje usunięcie konieczności zarządzania płaszczyznami zaplecza obsługującymi skalowanie i połączenia klienckie. W pełni zarządzana usługa upraszcza również aplikacje internetowe i oszczędza koszty hostingu. Usługa SignalR Service oferuje globalny zasięg i światowej klasy centrum danych i sieć, skaluje do milionów połączeń oraz zapewnia standardową zgodność i zabezpieczenia platformy Azure.
Usługa SignalR Service obsługuje zarówno konfiguracje oparte na serwerze, jak i środowiska bezserwerowe dzięki integracji z usługami Azure Functions i Event Grid.
Oferują zaawansowane interfejsy API dla różnych wzorców obsługi komunikatów:
Usługa SignalR Service umożliwia serwerowi wysyłanie komunikatów do określonego połączenia, wszystkich połączeń lub podzestawu połączeń należących do określonego użytkownika lub zostały umieszczone w dowolnej grupie.
Jak używać usługi Azure SignalR Service
Istnieje wiele różnych sposobów programowania za pomocą usługi Azure SignalR Service. Oto przykłady:
- Skalowanie aplikacji SignalR platformy ASP.NET Core — integracja usługi Azure SignalR Service z aplikacją SignalR platformy ASP.NET Core w celu skalowania do setek tysięcy połączeń.
- Tworzenie bezserwerowych aplikacji w czasie rzeczywistym — integracja usługi Azure Functions z usługą Azure SignalR Service umożliwia tworzenie bezserwerowych aplikacji w czasie rzeczywistym w językach, takich jak JavaScript, C# i Java.
- Wysyłanie komunikatów z serwera do klientów za pośrednictwem interfejsu API REST * Usługa Azure SignalR Service udostępnia interfejs API REST umożliwiający aplikacjom publikowanie komunikatów klientom połączonym z usługą SignalR Service przy użyciu dowolnego języka programowania obsługującego architekturę REST.