O que é o Serviço do Azure SignalR?

O Azure SignalR Service simplifica o processo de adição da funcionalidade Web em tempo real aos aplicativos por HTTP. Essa funcionalidade em tempo real permite que o serviço envie por push atualizações de conteúdo a clientes conectados, como um aplicativo móvel ou Web de página única. Como resultado, os clientes são atualizados sem a necessidade de sondar o servidor, ou enviar novas solicitações HTTP para atualizações.

Este artigo fornece uma visão geral do Azure SignalR Service.

Para que o Azure SignalR Service é usado?

Qualquer cenário que exija o envio de dados do servidor para o cliente em tempo real pode usar o Serviço Azure SignalR.

Os recursos tradicionais em tempo real, que geralmente exigem a sondagem de um servidor, também podem usar o Serviço do Azure SignalR.

O Serviço Azure SignalR foi usado em vários setores e serve para qualquer tipo de aplicativo que exija atualizações de conteúdo em tempo real. Confira alguns exemplos de onde você pode usar Serviço do Azure SignalR:

  • Atualizações de dados de alta frequência: jogos, votação, pesquisa e leilões.
  • Painéis e monitoramento: painéis da empresa, dados do mercado financeiro, atualizações instantâneas de vendas, placares de jogos com vários jogadores e monitoramento de IoT.
  • Chat: salas de chat ao vivo, chatbots, atendimento ao cliente online, assistentes de compras em tempo real, mensagens de texto e chats em jogos.
  • Localização no mapa em tempo real: acompanhamento logístico, acompanhamento do status de entrega, atualizações de status de transporte e aplicativos com GPS.
  • Anúncios direcionados em tempo real: anúncios e ofertas por push em tempo real personalizados e anúncios interativos.
  • Aplicativos de colaboração: coautoria, aplicativos de quadro de comunicações e software de reunião em equipe.
  • Notificações por push: redes sociais, emails, jogos e alertas de viagem.
  • Transmissão em tempo real: transmissão de áudio/vídeo ao vivo, legendagem ao vivo, tradução e transmissão de eventos/notícias.
  • IoT e dispositivos conectados: métricas de IoT em tempo real, controle remoto, status em tempo real e rastreamento de localização.
  • Automação: gatilhos em tempo real de eventos upstream.

Quais são os benefícios do uso do Serviço Azure SignalR?

Baseado em padrão:

O SignalR fornece uma abstração sobre muitas técnicas usadas para criar aplicativos Web em tempo real. WebSockets é o transporte ideal, mas outras técnicas, como SSE (Eventos enviados pelo servidor) e Sondagem Longa são usadas quando outras opções não estão disponíveis. O SignalR detecta e inicializa automaticamente o transporte apropriado com base nos recursos com suporte no cliente e no servidor.

Suporte nativo do ASP.NET Core:

O Serviço SignalR fornece uma experiência de programação nativa com o ASP.NET Core e o ASP.NET. O desenvolvimento de novos aplicativos do SignalR com o Serviço SignalR ou a migração de aplicativos baseados em SignalR existente para o Serviço SignalR exige pouco esforço. O Serviço SignalR também oferece suporte ao novo recurso do ASP.NET Core: o Blazor do lado do servidor.

Suporte ao cliente amplo:

Serviço do SignalR funciona com uma ampla variedade de clientes, como:

  • navegadores web e móveis
  • aplicativos da área de trabalho
  • aplicativos móveis
  • Dispositivos IoT
  • consoles de jogos

Suporte a vários idiomas:

O Serviço SignalR oferece SDKs em linguagens diferentes:

  • Lado do cliente: Todas as bibliotecas de cliente que dão suporte ao protocolo SignalR são compatíveis com o serviço do SignalR.
  • Lado do servidor: aplicativos Web ASP.NET Core ou ASP.NET
  • Suporte sem servidor por meio de APIs REST, gatilhos e associações do Azure Functions, e integrações da Grade de Eventos para o SignalR do ASP.NET Core.

Lidar com conexões de cliente em grande escala:

O Serviço SignalR foi projetado para aplicativos em grande escala em tempo real. O Serviço SignalR permite que várias instâncias funcionem em conjunto a fim de dimensionar para milhões de conexões de cliente. O serviço também oferece suporte a várias regiões globais para fins de recuperação de desastre, alta disponibilidade ou fragmentação.

Remover a carga para auto-hospedar o SignalR:

Em comparação com aplicativos auto-hospedados do SignalR, a mudança para o Serviço SignalR eliminará a necessidade de gerenciamento de backplanes que tratam a escala e as conexões de cliente. O serviço totalmente gerenciado também simplifica os aplicativos Web e economiza custos com hospedagem. O Serviço SignalR oferece alcance global, data center e rede da mais alta qualidade, pode escalar para milhões de conexões e fornece a conformidade e a segurança padrões do Azure.

O Serviço do SignalR dá suporte a configurações baseadas em servidor e ambientes sem servidor por meio da integração com o Azure Functions e a Grade de Eventos.

Managed SignalR Service

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

O Serviço SignalR permite que o servidor envie mensagens para uma conexão específica, para todas as conexões ou para um subconjunto de conexões que pertence a um usuário específico ou que foi colocado em um grupo aleatório.

Como usar o Azure SignalR Service

Há muitas maneiras diferentes de programar com o Serviço Azure SignalR. Veja alguns exemplos: