Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

ASP.NET Signal R - Glauco Godoi

1,376 views

Published on

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.

Published in: Technology
  • Be the first to comment

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”

×