Klientbibliotek för Azure Web PubSub-tjänsten för Java
Azure Web PubSub-tjänsten är en Azure-hanterad tjänst som hjälper utvecklare att enkelt skapa webbprogram med realtidsfunktioner och ett publiceringsprenumerationsmönster. Alla scenarion som kräver publiceringsprenumerationsmeddelanden i realtid mellan server och klienter eller mellan klienter kan använda Azure Web PubSub-tjänsten. Traditionella realtidsfunktioner som ofta kräver avsökning från servern eller skicka HTTP-begäranden kan också använda Azure Web PubSub-tjänsten.
I den här artikeln beskrivs klientbiblioteket för Azure Web PubSub-tjänsten.
Du kan använda det här biblioteket i din app på serversidan för att hantera WebSocket-klientanslutningarna, som du ser i det här diagrammet:
Använd det här biblioteket för att:
- Skicka meddelanden till hubbar och grupper.
- Skicka meddelanden till vissa användare och anslutningar.
- Organisera användare och anslutningar i grupper.
- Stäng anslutningar
- Bevilja, återkalla och kontrollera behörigheter för en befintlig anslutning
Mer information finns i:
- Java SDK för Azure Web PubSub-klientbibliotek
- Referensdokumentation för Azure Web PubSub-klientbibliotek
- Azure Web PubSub-klientbiblioteksexempel för Java
- Dokumentation om Azure Web PubSub-tjänsten
Komma igång
Förutsättningar
- Ett Azure-konto med en aktiv prenumeration krävs. Om du inte redan har ett konto kan du skapa ett konto kostnadsfritt.
- Ett Java Development Kit (JDK), version 8 eller senare.
Inkludera paketet
<dependency>
<groupId>com.azure</groupId>
<artifactId>azure-messaging-webpubsub</artifactId>
<version>1.0.0</version>
</dependency>
Skapa en WebPubSubServiceClient
med hjälp av anslutningssträng
WebPubSubServiceClient webPubSubServiceClient = new WebPubSubServiceClientBuilder()
.connectionString("{connection-string}")
.hub("chat")
.buildClient();
Skapa en WebPubSubServiceClient
med hjälp av åtkomstnyckeln
WebPubSubServiceClient webPubSubServiceClient = new WebPubSubServiceClientBuilder()
.credential(new AzureKeyCredential("{access-key}"))
.endpoint("<Insert endpoint from Azure Portal>")
.hub("chat")
.buildClient();
Exempel
- Sändningsmeddelande till hela hubben
- Sända meddelande till en grupp
- Skicka meddelande till en anslutning
- Skicka meddelande till en användare
Sändningsmeddelande till hela hubben
webPubSubServiceClient.sendToAll("Hello world!", WebPubSubContentType.TEXT_PLAIN);
Sända meddelande till en grupp
webPubSubServiceClient.sendToGroup("java", "Hello Java!", WebPubSubContentType.TEXT_PLAIN);
Skicka meddelande till en anslutning
webPubSubServiceClient.sendToConnection("myconnectionid", "Hello connection!", WebPubSubContentType.TEXT_PLAIN);
Skicka meddelande till en användare
webPubSubServiceClient.sendToUser("Andy", "Hello Andy!", WebPubSubContentType.TEXT_PLAIN);
Felsökning
Aktivera klientloggning
Du kan ange AZURE_LOG_LEVEL
miljövariabeln för att visa loggningsuttryck som görs i klientbiblioteket. Inställningen AZURE_LOG_LEVEL=2
visar till exempel alla informations-, varnings- och felmeddelanden. Loggnivåerna finns här: loggnivåer.
HTTP-standardklient
Alla klientbibliotek använder Netty HTTP-klienten som standard. Om du lägger till beroendet ovan konfigureras automatiskt klientbiblioteket så att netty HTTP-klienten används. Konfiguration eller ändring av HTTP-klienten beskrivs i HTTP-klienternas wiki.
Standard-SSL-bibliotek
Som standard använder alla klientbibliotek det Tomcat-inbyggda Boring SSL-biblioteket för att aktivera prestanda på intern nivå för SSL-åtgärder. Boring SSL-biblioteket är en uber-jar som innehåller interna bibliotek för Linux/macOS/Windows och ger bättre prestanda jämfört med standard-SSL-implementeringen i JDK. Mer information, inklusive hur du minskar beroendestorleken, finns i [prestandajustering][https://github.com/Azure/azure-sdk-for-java/wiki/Performance-Tuning].
Använd dessa resurser för att börja skapa ett eget program: