Biblioteka klienta usługi Azure Web PubSub dla języka Java
Usługa Azure Web PubSub to usługa zarządzana przez platformę Azure, która ułatwia deweloperom łatwe tworzenie aplikacji internetowych z funkcjami w czasie rzeczywistym i wzorcem publikowania-subskrybowania. Każdy scenariusz, który wymaga komunikatów publikowania i subskrybowania w czasie rzeczywistym między serwerem a klientami lub między klientami, może korzystać z usługi Azure Web PubSub. Tradycyjne funkcje czasu rzeczywistego, które często wymagają sondowania z serwera lub przesyłania żądań HTTP, mogą również używać usługi Azure Web PubSub.
W tym artykule opisano bibliotekę klienta usługi Azure Web PubSub.
Tej biblioteki można używać w aplikacji po stronie serwera do zarządzania połączeniami klienta protokołu WebSocket, jak pokazano na poniższym diagramie:
Użyj tej biblioteki, aby:
- Wysyłanie komunikatów do centrów i grup.
- Wysyłanie komunikatów do konkretnych użytkowników i połączeń.
- Organizowanie użytkowników i połączeń w grupy.
- Zamykanie połączeń
- Udzielanie, odwoływanie i sprawdzanie uprawnień dla istniejącego połączenia
Aby uzyskać więcej informacji, zobacz:
- Zestaw Java SDK biblioteki klienta usługi Azure Web PubSub
- Dokumentacja referencyjna biblioteki klienta usługi Azure Web PubSub
- Przykłady biblioteki klienta usługi Azure Web PubSub dla języka Java
- Dokumentacja usługi Azure Web PubSub
- Wymagane jest konto platformy Azure z aktywną subskrypcją. Jeśli jeszcze go nie masz, możesz bezpłatnie utworzyć konto.
- Zestaw Java Development Kit (JDK) w wersji 8 lub nowszej.
<dependency>
<groupId>com.azure</groupId>
<artifactId>azure-messaging-webpubsub</artifactId>
<version>1.0.0</version>
</dependency>
WebPubSubServiceClient webPubSubServiceClient = new WebPubSubServiceClientBuilder()
.connectionString("{connection-string}")
.hub("chat")
.buildClient();
WebPubSubServiceClient webPubSubServiceClient = new WebPubSubServiceClientBuilder()
.credential(new AzureKeyCredential("{access-key}"))
.endpoint("<Insert endpoint from Azure Portal>")
.hub("chat")
.buildClient();
- Emisja komunikatu do całego centrum
- Emisja komunikatu do grupy
- Wysyłanie wiadomości do połączenia
- Wysyłanie wiadomości do użytkownika
webPubSubServiceClient.sendToAll("Hello world!", WebPubSubContentType.TEXT_PLAIN);
webPubSubServiceClient.sendToGroup("java", "Hello Java!", WebPubSubContentType.TEXT_PLAIN);
webPubSubServiceClient.sendToConnection("myconnectionid", "Hello connection!", WebPubSubContentType.TEXT_PLAIN);
webPubSubServiceClient.sendToUser("Andy", "Hello Andy!", WebPubSubContentType.TEXT_PLAIN);
Możesz ustawić zmienną AZURE_LOG_LEVEL
środowiskową, aby wyświetlić instrukcje rejestrowania wprowadzone w bibliotece klienta. Na przykład ustawienie AZURE_LOG_LEVEL=2
spowoduje wyświetlenie wszystkich informacji, ostrzeżeń i komunikatów dziennika błędów. Poziomy dziennika można znaleźć tutaj: poziomy dziennika.
Wszystkie biblioteki klienckie domyślnie używają klienta HTTP Netty. Dodanie powyższej zależności spowoduje automatyczne skonfigurowanie biblioteki klienta tak, aby korzystała z klienta HTTP Netty. Konfigurowanie lub zmienianie klienta HTTP jest opisane w witrynie typu wiki klientów HTTP.
Domyślnie wszystkie biblioteki klienckie używają natywnej biblioteki SSL Firmy Tomcat do włączania wydajności na poziomie natywnym dla operacji SSL. Biblioteka Boring SSL to plik jar uber zawierający biblioteki natywne dla systemu Linux/macOS/Windows i zapewnia lepszą wydajność w porównaniu z domyślną implementacją protokołu SSL w zestawie JDK. Aby uzyskać więcej informacji, w tym jak zmniejszyć rozmiar zależności, zobacz [dostrajanie wydajności][https://github.com/Azure/azure-sdk-for-java/wiki/Performance-Tuning].
Użyj tych zasobów, aby rozpocząć tworzenie własnej aplikacji: