Compartilhar via


O que é o serviço Azure Web PubSub?

O Serviço Azure Web PubSub facilita a criação de aplicativos web sempre que o servidor e os clientes precisarem trocar dados em tempo real. A troca de dados em tempo real é o fundamento de determinados aplicativos sensíveis ao tempo criados e desenvolvidos por desenvolvedores. Os desenvolvedores têm usado o serviço em uma variedade de aplicativos e setores, por exemplo, em aplicativos de chat, painéis em tempo real, jogos para vários jogadores, leilões online, aplicativos colaborativos para vários usuários, rastreamento de localização, notificações e muito mais.

Quando o uso de um aplicativo é reduzido, os desenvolvedores costumam optar por um mecanismo de sondagem para fornecer comunicação em tempo real entre servidor e clientes: os clientes enviam solicitações HTTP repetidas para o servidor durante um intervalo de tempo. No entanto, os desenvolvedores costumam reportar que, embora seja simples de implementar, o mecanismo de sondagem apresenta três desvantagens importantes.

  • Dados desatualizados.
  • Dados inconsistentes.
  • Recursos de computação e largura de banda desperdiçados.

Essas desvantagens são as principais motivações que levam os desenvolvedores a procurar alternativas. Este artigo fornece uma visão geral do serviço Azure Web PubSub e de como os desenvolvedores podem usá-lo para criar um canal de comunicação em tempo real rapidamente e em larga escala.

Para que o serviço Azure Web PubSub é usado?

Token de streaming no chatbot assistido por IA

Com o recente aumento do interesse por IA, o Web PubSub se tornou uma ferramenta inestimável para desenvolvedores que criam aplicativos habilitados por IA para fluxos de token. O serviço é testado e aprovado em situações difíceis nas quais é ampliado para dezenas de milhões de conexões simultâneas e oferece uma latência ultrabaixa.

Fornecendo atualizações em tempo real

Qualquer cenário de aplicativo em que as atualizações no recurso de dados precisam ser fornecidas a outros componentes em toda a rede pode se beneficiar do uso do Azure Web PubSub. Como o nome sugere, o serviço facilita a comunicação entre um fornecedor e os assinantes. Um fornecedor é um componente que publica atualizações de dados. Um assinante é um componente que faz assinaturas de atualizações de dados.

O serviço Azure Web PubSub é usado em uma variedade de setores e cenários de aplicativos cujos dados são sensíveis ao tempo. Aqui temos uma lista parcial de alguns casos de uso comuns.

Caso de uso Aplicativos de exemplo
Atualizações de dados de alta frequência Jogos multijogador, votação nas redes sociais, enquetes de opinião, leilão online
Painéis de controle e aplicativos de monitoramento ao vivo Painel de controle da empresa, dados do mercado financeiro, atualização instantânea de vendas, placar de líderes de jogos, monitoramento de IoT
Chat multiplataforma Sala de chat ao vivo, suporte ao cliente online, assistente de compras em tempo real, messenger, chat no jogo
Rastreamento de localização Rastreamento de veículos da empresa, rastreamento de status de entrega, atualizações de status de transporte, aplicativos de transporte individual de passageiros
Aplicativos colaborativos multiusuário aplicativos de coautoria, quadro de comunicações colaborativo e reuniões de equipe
Notificações por push de plataformas cruzadas Rede social, email, status de jogo, alertas de viagem
A IoT e os dispositivos conectados Métricas de IoT em tempo real, gerenciamento da rede de carregamento de veículos elétricos, participação de shows ao vivo
Automação Acionamento a partir de eventos upstream em tempo real

Quais são os benefícios do uso do serviço Azure Web PubSub?

Suporte interno para conexões de cliente em grande escala e arquiteturas altamente disponíveis:

O serviço Azure Web PubSub foi projetado para aplicativos de larga escala em tempo real. Com um único recurso do Web PubSub, o serviço pode ser ampliado para 1 milhão de conexões simultâneas, o que basta para a maioria dos casos. Quando diversos recursos são usados juntos, o serviço permite que você o amplie para mais de 1 milhão de conexões simultâneas. Enquanto isso, ele também dá suporte a várias regiões globais para fins de fragmentação, alta disponibilidade ou recuperação de desastre.

Suporte para uma ampla variedade de SDKs de cliente e linguagens de programação:

O serviço Azure Web PubSub funciona com uma ampla variedade de clientes. Esses clientes incluem navegadores da Web e de dispositivos móveis, aplicativos de área de trabalho, aplicativos móveis, processos de servidor, dispositivos IoT e consoles de jogos. Os SDKs de servidor e cliente estão disponíveis para linguagens de programação tradicionais, como C#, Java, JavaScript e Python, o que facilita o consumo das APIs oferecidas pelo serviço. Já que o serviço é compatível com o protocolo WebSocket padrão, você pode usar qualquer linguagem de programação compatível com REST para chamar as APIs do Web PubSub diretamente, caso os SDKs não estejam disponíveis na linguagem de programação de sua escolha.

Oferecer APIs avançadas para padrões de mensagens diferentes:

O serviço Azure Web PubSub oferece uma comunicação bidirecional em tempo real entre servidor e clientes para intercâmbio de dados. O serviço oferece recursos para permitir que você controle de forma detalhada como uma mensagem deve ser entregue e para quem. Aqui temos uma lista de padrões de mensagens com suporte.

Padrão do sistema de mensagens Detalhes
Difundir para todos os clientes Um servidor envia atualizações de dados para todos os clientes conectados.
Transmitir para um subconjunto de clientes Um servidor envia atualizações de dados para um subconjunto de clientes definidos arbitrariamente por você.
Transmitir para todos os clientes pertencentes a um usuário humano específico Um usuário humano pode ter várias guias de navegador e dispositivos abertos; você pode transmitir para o usuário de forma que todos os clientes web usados pelo usuário sejam sincronizados.
Pub/sub de cliente Um cliente envia mensagens para clientes que fazem parte de um grupo definido arbitrariamente por você sem o envolvimento do servidor.
De clientes para servidor Os clientes enviam mensagens para o servidor com baixa latência.

Como usar o serviço Azure Web PubSub?

Há muitas maneiras diferentes de programar aplicativos com o serviço Azure Web PubSub, como alguns dos exemplos listados abaixo:

  • Criar aplicativos em tempo real sem servidor: use a integração do Azure Functions ao serviço Azure Web PubSub para criar aplicativos em tempo real sem servidor em linguagens como JavaScript, C#, Java e Python.
  • Usar o subprotocolo WebSocket para fazer Pub/Sub (publicar/assinar) somente no lado do cliente: o serviço Azure Web PubSub fornece subprotocolos WebSocket incluindo MQTT para capacitar os clientes autorizados a publicar em outros clientes de maneira conveniente.
  • Usar os SDKs fornecidos para gerenciar as conexões WebSocket em servidores para aplicativos de auto-hospedagem: o serviço Azure Web PubSub fornece SDKs em C#, JavaScript, Java e Python para gerenciar com facilidade as conexões WebSocket, incluindo mensagens de difusão para as conexões, adição de conexões a alguns grupos ou fechamento das conexões etc.
  • Enviar mensagens do servidor para os clientes por meio da API REST: o serviço Azure Web PubSub fornece a API REST para permitir que os aplicativos postem mensagens para os clientes conectados, em qualquer linguagem de programação compatível com REST.

Início rápido

Próximas etapas

Use estes recursos para começar a criar seu aplicativo: