0
ATUALIZAÇÕES SEM F5 (OU
CMD+R) COM WEBSOCKETS
Gabriel Schade Cardoso
Jhony Luiz de Almeida
OS PALESTRANTES
http://programadorpoliglota.com.br
A NECESSIDADE
• Atualizações de página em tempo real	

• Páginas cujas informações tornam-se
desatualizadas em questão de ...
O PROBLEMA
• HTTP não foi projetado para páginas dinâmicas	

• Canal de comunicação é apenas half-duplex	

• Servidor não ...
AS "SOLUÇÕES"
• Polling, long polling, streaming…	

• Cliente faz contínuas requisições para o servidor
solicitando atuali...
POLLING / LONG POLLING
A SOLUÇÃO
WebSockets!
WEBSOCKET ?
• Protocolo full-duplex para troca de mensagens
assíncronas	

• Conexão é iniciada por HTTP com uma
requisição...
WEBSOCKETS
WEBSOCKETS X SOCKETS
• WebSockets trabalham com mensagens ao invés de
cadeias de bytes	

• As mensagens sempre são entregu...
IMPLEMENTAÇÕES
• Servidor disponível em várias linguagens: Java, C#,
Python, PHP (Ratchet), JavaScript (NodeJS),
Ruby…	

•...
DEMO	

!
FONTES: 	

HTTPS://GITHUB.COM/WJHONY/PROGRAMADORPOLIGLOTA/TREE/MASTER/TRONWEBSOCKET!
HTTPS://GITHUB.COM/GABRIELSC...
OBRIGADO!	

!
Gabriel Schade Cardoso /gabrielschade	

Jhony Luiz de Almeida w.jhony@outlook.com
!
Visite: programadorpolig...
Upcoming SlideShare
Loading in...5
×

TDC 2014 - Atualizações sem F5 com WebSockets (Jhony, Gabriel Schade)

149

Published on

Apresentação da palestra no TDC 2014 - Florianópolis sobre WebSockets, com demonstração prática implementada nas plataformas Java, JavaScript e Windows Phone.

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
149
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
8
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Transcript of "TDC 2014 - Atualizações sem F5 com WebSockets (Jhony, Gabriel Schade)"

  1. 1. ATUALIZAÇÕES SEM F5 (OU CMD+R) COM WEBSOCKETS Gabriel Schade Cardoso Jhony Luiz de Almeida
  2. 2. OS PALESTRANTES http://programadorpoliglota.com.br
  3. 3. A NECESSIDADE • Atualizações de página em tempo real • Páginas cujas informações tornam-se desatualizadas em questão de segundos • Chats, notícias de última hora, bolsa de valores, lista de pedidos, rastreamento, jogos multiplayer…
  4. 4. O PROBLEMA • HTTP não foi projetado para páginas dinâmicas • Canal de comunicação é apenas half-duplex • Servidor não pode enviar nada ao cliente sem que ele requisite
  5. 5. AS "SOLUÇÕES" • Polling, long polling, streaming… • Cliente faz contínuas requisições para o servidor solicitando atualizações • Geração de tráfego de rede desnecessário, atualizações não ocorrem de fato em tempo real
  6. 6. POLLING / LONG POLLING
  7. 7. A SOLUÇÃO WebSockets!
  8. 8. WEBSOCKET ? • Protocolo full-duplex para troca de mensagens assíncronas • Conexão é iniciada por HTTP com uma requisição de upgrade de protocolo (handshaking) • APIs orientadas a eventos (conexão aberta/ fechada, mensagem recebida)
  9. 9. WEBSOCKETS
  10. 10. WEBSOCKETS X SOCKETS • WebSockets trabalham com mensagens ao invés de cadeias de bytes • As mensagens sempre são entregues por inteiro, não existe segmentação • Usa a mesma porta do HTTP • Contorna obstáculos como proxies e firewalls
  11. 11. IMPLEMENTAÇÕES • Servidor disponível em várias linguagens: Java, C#, Python, PHP (Ratchet), JavaScript (NodeJS), Ruby… • Clientes de navegador possuem a API JavaScript nativa definida por especificação do HTML 5, além de versões de terceiros
  12. 12. DEMO ! FONTES: HTTPS://GITHUB.COM/WJHONY/PROGRAMADORPOLIGLOTA/TREE/MASTER/TRONWEBSOCKET! HTTPS://GITHUB.COM/GABRIELSCHADE/BLOG/TREE/MASTER/WINDOWS%20PHONE/CSHARP
  13. 13. OBRIGADO! ! Gabriel Schade Cardoso /gabrielschade Jhony Luiz de Almeida w.jhony@outlook.com ! Visite: programadorpoliglota.com.br
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×