Aplicações Web Realtime 
Sem mágicas e sem enrolação
Gabriel Gularte 
Web Developer at Mentis 
CTO at EVIN 
@gabrielfgularte
Como achamos que 
é...
Como é na verdade...
Técnicas de realtime na web 
Websockets, Polling e Long Polling
Websockets 
● Full-Duplex 
● HTML5 API 
● Especificação não está finalizada pelo W3C 
● Não funciona em browsers antigos 
...
http://caniuse.com/#feat=websocket 
s 
Websockets
Websockets 
http://www.slideshare.net https://www.zendesk.com.br
Websockets 
http://socket.io
Websockets 
https://ws4py.readthedocs.org
Polling 
● Loop que consome dados periodicamente 
● Perde tempo em requests sem mudanças e tráfego desnecessário 
● Defasa...
Polling
Long Polling 
● Uma única conexão até que haja mudança 
● Poupa requests e tráfego de dados desnecessários 
● Caso queira,...
Long Polllliing
Long Polllliing
Long Polllliing
Resumo 
● Nada é "real realtime". Tudo tem um tempo para acontecer 
● Realtime é somente uma sensação (nothing more then f...
Muito 
obrigado! 
https://github.com/gabrielfgularte/talks/tree/master/2014/frontendcarioca 
https://medium.com/@gabrielfg...
Aplicações Web Realtime
Aplicações Web Realtime
Aplicações Web Realtime
Próximos SlideShares
Carregando em…5
×

Aplicações Web Realtime

508 visualizações

Publicada em

Talk at FrontEnd Carioca, Rio de Janeiro, Brazil - 27/09/2014

In this talk, I show how realtime works and how you can build a better web application using good techniques.

Medium: https://medium.com/@gabrielfgularte/understanding-realtime-web-apps-5aef47d51a45

Publicada em: Tecnologia
  • Seja o primeiro a comentar

Aplicações Web Realtime

  1. 1. Aplicações Web Realtime Sem mágicas e sem enrolação
  2. 2. Gabriel Gularte Web Developer at Mentis CTO at EVIN @gabrielfgularte
  3. 3. Como achamos que é...
  4. 4. Como é na verdade...
  5. 5. Técnicas de realtime na web Websockets, Polling e Long Polling
  6. 6. Websockets ● Full-Duplex ● HTML5 API ● Especificação não está finalizada pelo W3C ● Não funciona em browsers antigos Se você não precisa se preocupar com navegadores antigos, use a vontade.
  7. 7. http://caniuse.com/#feat=websocket s Websockets
  8. 8. Websockets http://www.slideshare.net https://www.zendesk.com.br
  9. 9. Websockets http://socket.io
  10. 10. Websockets https://ws4py.readthedocs.org
  11. 11. Polling ● Loop que consome dados periodicamente ● Perde tempo em requests sem mudanças e tráfego desnecessário ● Defasagem de tempo definido pelo delay do loop ● Funciona em todos os browsers Péssima escolha para construir o seu webapp realtime
  12. 12. Polling
  13. 13. Long Polling ● Uma única conexão até que haja mudança ● Poupa requests e tráfego de dados desnecessários ● Caso queira, ainda pode definir um tempo para timeout ● Funciona em todos os browsers Melhor técnica para construir o seu webapp realtime
  14. 14. Long Polllliing
  15. 15. Long Polllliing
  16. 16. Long Polllliing
  17. 17. Resumo ● Nada é "real realtime". Tudo tem um tempo para acontecer ● Realtime é somente uma sensação (nothing more then feelings) ● Websockets é API e Polling/Long Polling é técnica ● Use Websockets se não precisa dar suporte para browsers antigos ● Não use Polling, só é necessário pra entender a base do Long Polling ● Long Polling é como pescar, pesque mais!
  18. 18. Muito obrigado! https://github.com/gabrielfgularte/talks/tree/master/2014/frontendcarioca https://medium.com/@gabrielfgularte/understanding-realtime-web-apps-5aef47d51a45

×