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.
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:
- Dimensionar um aplicativo SignalR do ASP.NET Core – integre o Azure SignalR Service com um aplicativo SignalR do ASP.NET Core para escalar horizontalmente centenas de milhares de conexões.
- Criar aplicativos em tempo real sem servidor – use a integração do Azure Functions com o SignalR Service para criar aplicativos em tempo real sem servidor em linguagens como JavaScript, C# e Java.
- Enviar mensagens do servidor para clientes por meio da API REST * o Azure SignalR Service fornece uma API REST para habilitar aplicativos para publicar mensagens a clientes conectados com o SignalR Service, usando qualquer linguagem de programação compatível com REST.