Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
O serviço Azure Web PubSub é um serviço gerenciado pelo Azure que ajuda os desenvolvedores a criar aplicativos Web facilmente com recursos em tempo real e um padrão de publicação e assinatura. Qualquer cenário que exija mensagens de publicação e assinatura em tempo real entre servidores e clientes ou entre clientes pode usar o serviço Azure Web PubSub. Recursos tradicionais em tempo real que geralmente exigem sondagem do servidor ou envio de solicitações HTTP também podem usar o serviço Azure Web PubSub.
Este artigo descreve a biblioteca de clientes de serviço do Azure Web PubSub.
Você pode usar essa biblioteca em seu aplicativo do lado do servidor para gerenciar as conexões de cliente WebSocket, conforme mostrado neste diagrama:
Use esta biblioteca para:
- Enviar mensagens para hubs e grupos.
- Enviar mensagens para determinados usuários e conexões.
- Organize usuários e conexões em grupos.
- Fechar conexões
- Conceder, revogar e verificar permissões para uma conexão existente
Para obter mais informações, consulte:
- Java SDK da biblioteca de cliente do Azure Web PubSub
- Documentação de referência da biblioteca de clientes do Azure Web PubSub
- Exemplos da biblioteca de clientes do Azure Web PubSub para Java
- Documentação do serviço Azure Web PubSub
Como começar
Pré-requisitos
- É necessária uma conta do Azure com uma assinatura ativa. Se você ainda não tiver uma, poderá criar uma conta gratuitamente.
- Um JDK (Java Development Kit), versão 8 ou posterior.
Inclua o pacote
<dependency>
<groupId>com.azure</groupId>
<artifactId>azure-messaging-webpubsub</artifactId>
<version>1.0.0</version>
</dependency>
Criar uma string de conexão usando WebPubSubServiceClient
WebPubSubServiceClient webPubSubServiceClient = new WebPubSubServiceClientBuilder()
.connectionString("{connection-string}")
.hub("chat")
.buildClient();
Criar uma chave de acesso usando WebPubSubServiceClient
WebPubSubServiceClient webPubSubServiceClient = new WebPubSubServiceClientBuilder()
.credential(new AzureKeyCredential("{access-key}"))
.endpoint("<Insert endpoint from Azure portal>")
.hub("chat")
.buildClient();
Exemplos
- Transmitir mensagem para o hub inteiro
- Transmitir mensagem para um grupo
- Enviar mensagem para uma conexão
- Enviar mensagem para um usuário
Transmitir mensagem para o hub inteiro
webPubSubServiceClient.sendToAll("Hello world!", WebPubSubContentType.TEXT_PLAIN);
Transmitir mensagem para um grupo
webPubSubServiceClient.sendToGroup("java", "Hello Java!", WebPubSubContentType.TEXT_PLAIN);
Enviar uma mensagem para uma conexão
webPubSubServiceClient.sendToConnection("myconnectionid", "Hello connection!", WebPubSubContentType.TEXT_PLAIN);
Enviar mensagem para um usuário
webPubSubServiceClient.sendToUser("Andy", "Hello Andy!", WebPubSubContentType.TEXT_PLAIN);
Resolução de problemas
Habilitar o log do cliente
Você pode definir a variável de ambiente AZURE_LOG_LEVEL para exibir instruções de log feitas na biblioteca de cliente. Por exemplo, a configuração AZURE_LOG_LEVEL=2 mostraria todas as mensagens de log informativas, de aviso e de erro. Os níveis de log podem ser encontrados aqui: níveis de log.
Cliente HTTP padrão
Todas as bibliotecas de cliente usam o cliente HTTP do Netty por padrão. Adicionar a dependência acima configurará automaticamente a biblioteca de clientes para usar o cliente HTTP do Netty. Configurar ou alterar o cliente HTTP é descrito no wiki de clientes HTTP.
Biblioteca SSL padrão
Por padrão, todas as bibliotecas de cliente usam a biblioteca SSL Boring nativa do Tomcat para habilitar o desempenho em nível nativo para operações SSL. A biblioteca Boring SSL é um uber JAR que contém bibliotecas nativas para Linux/macOS/Windows e fornece melhor desempenho em comparação com a implementação padrão de SSL no JDK. Para obter mais informações, incluindo como reduzir o tamanho da dependência, consulte [ajuste de desempenho][https://github.com/Azure/azure-sdk-for-java/wiki/Performance-Tuning].
Use estes recursos para começar a criar seu aplicativo: