ASP.NET Signal R - Glauco Godoi

1.303 visualizações

Publicada em

Com o ASP.NET SignalR passamos a ter o poder da comunicação em real-time através de mecanismos de push. O SignalR utiliza um conjunto de tecnologias e técnicas para permitir que o servidor envie informação para um ou mais clientes. Estes clientes podem ser tão diferentes quanto um cliente HTML + Javascript, uma aplicação WPF ou mesmo uma app a ser executada no iOS.

Vamos explorar estas potencialidades em um conjunto de exemplos práticos onde poderemos perceber:

Quais as técnicas e tecnologias que suportam o SignalR;
Quão simples é criar um cliente capaz de fazer comunicação em real-time;
Quais plataformas já suportam o SignalR;
Além disso poderemos discutir quais as áreas de aplicabilidade desta tecnologia.

Publicada em: Tecnologia
0 comentários
1 gostou
Estatísticas
Notas
  • Seja o primeiro a comentar

Sem downloads
Visualizações
Visualizações totais
1.303
No SlideShare
0
A partir de incorporações
0
Número de incorporações
2
Ações
Compartilhamentos
0
Downloads
0
Comentários
0
Gostaram
1
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

ASP.NET Signal R - Glauco Godoi

  1. 1. ASP.NET SignalR - Comunicação em real-time simples e para todo mundo Glauco Godoi http://netponto.org38ª Reunião Presencial - 20/04/2013
  2. 2. Glauco Godoi - Senior Solution Architect @ Truewind-Chiron - Foco em desenvolvimento web na plataforma Microsoft; - glauco.godoi@truewind-chiron.com - Linked-in: pt.linkedin.com/in/glaucorgodoi/
  3. 3. ASP.Net SignalR – simple real-time Agenda - Comunicação em tempo real - SignalR - Utilização básica do SignalR - Clientes disponíveis - Q & A
  4. 4. ASP.Net SignalR – simple real-time Comunicação em tempo real - O que é ? - Onde poderia utilizar ? - Como podemos implementar ? Jogos Aplicações de chat Logging, exception capturing Real-time charting Aplicações colaborativas Banca
  5. 5. ASP.Net SignalR – simple real-time - Pedidos HTTP No mundo web a funcionar sobre HTTP estamos presos ao paradigma RR (Request X Respose) Response Request
  6. 6. ASP.Net SignalR – simple real-time - Simulando o real-time Polling Já tem dados? Não! Já tem dados? Não! Já tem dados ? Sim! Javascript <meta http-equiv="refresh" content="5" >
  7. 7. ASP.Net SignalR – simple real-time - Simulando o real-time Long polling Javascript Já tem dados? ….. Não! Já tem dados ? …… tu-tu-tu-tu-tu
  8. 8. ASP.Net SignalR – simple real-time - Simulando o real-time Forever frame Javascript injectado directamente na página através de um iframe cujo documento nunca termina <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <body> <iframe src="myservice.ashx"></iframe> </body> </html>
  9. 9. ASP.Net SignalR – simple real-time - Simulando o real-time Server sent events Tecnologia padronizada pelo W3C no HTML5. Exige um pedido de conexão inicial por parte do cliente. http://dev.w3.org/html5/eventsource/ Não é suportado nativamente pelo IE
  10. 10. ASP.Net SignalR – simple real-time Usage share of desktop browsers for March 2013 Source Chrome Internet Explorer Firefox Safari Opera Other StatCounter 38.07% 29.30% 20.87% 8.50% 1.17% 2.09% Wikimedia 44.06% 22.08% 18.17% 3.24% 3.38% 9.07 % W3Counter 30.30% 24.60% 19.30% 16.30% 2.30% 7.20% NetApplicati ons 16.45% 55.83% 20.21% 5.31% 1.74% 0.20% Clicky 35.13% 33.38% 21.18% 8.92% 1.15% n/a%
  11. 11. ASP.Net SignalR – simple real-time - Simulando o real-time Websockets Faz parte do HTML5. Permite comunicação bidireccional. Pode ser consumido por browsers ou outros clientes. Cria uma conexão persistente. É uma extensão ao protocolo HTTP: ws e wss
  12. 12. ASP.Net SignalR – simple real-time Kobayashi maru
  13. 13. ASP.Net SignalR – simple real-time - SignalR - Fachada sobre as técnicas e tecnologias - Não é um projecto oficial da MS—- - Faz parte do ASP.NET - Licença do tipo MIT Apache 2.0 License - Disponível através do nuget - Dois modelos de conexão: Persistent connection & Hubs
  14. 14. ASP.Net SignalR – simple real-time DEMO
  15. 15. ASP.Net SignalR – simple real-time Clientes disponíveis • Javascript • .NET (wpf/silverlight, console, etc…) • Objective-C (ios, macos X) • Android
  16. 16. ASP.Net SignalR – simple real-time Resumo • Comunicação real-time é uma tendência crescente; • Existem várias formas de implementa-la. Cada uma delas com vantagens e desvantagens; • SignalR é uma opção interessante pois simplifica o trabalho do developer; • SignalR não é a única opção. Socket.IO e Node.js também fazem um trabalho muito bom porém SignalR é uma escolha mais “simples” se todo o stack aplicacional for Microsoft. • Testem sempre em vários browsers / clientes
  17. 17. ASP.Net SignalR – simple real-time Q & A
  18. 18. ASP.Net SignalR – simple real-time Obrigado
  19. 19. Patrocinador “GOLD” Twitter: @PTMicrosoft http://www.microsoft.com/portugal
  20. 20. Patrocinadores “Silver”
  21. 21. Patrocinadores “Bronze”

×