socket io - jszurich
TRANSCRIPT
![Page 1: Socket io - JSZurich](https://reader031.vdocument.in/reader031/viewer/2022020111/55d4c467bb61eb4f7c8b457c/html5/thumbnails/1.jpg)
Socket.ioRealtime just got real.
Dienstag, 24. April 12
![Page 2: Socket io - JSZurich](https://reader031.vdocument.in/reader031/viewer/2022020111/55d4c467bb61eb4f7c8b457c/html5/thumbnails/2.jpg)
Me
Dominique SandozStudent @UZH
Worker @vonwaldkirch
@streunerlein
Dienstag, 24. April 12
![Page 3: Socket io - JSZurich](https://reader031.vdocument.in/reader031/viewer/2022020111/55d4c467bb61eb4f7c8b457c/html5/thumbnails/3.jpg)
You?
Dienstag, 24. April 12
![Page 4: Socket io - JSZurich](https://reader031.vdocument.in/reader031/viewer/2022020111/55d4c467bb61eb4f7c8b457c/html5/thumbnails/4.jpg)
The StoryThe tl;dr-section of this presentation
Dienstag, 24. April 12
![Page 5: Socket io - JSZurich](https://reader031.vdocument.in/reader031/viewer/2022020111/55d4c467bb61eb4f7c8b457c/html5/thumbnails/5.jpg)
Dienstag, 24. April 12
![Page 6: Socket io - JSZurich](https://reader031.vdocument.in/reader031/viewer/2022020111/55d4c467bb61eb4f7c8b457c/html5/thumbnails/6.jpg)
So why?
Dienstag, 24. April 12
![Page 7: Socket io - JSZurich](https://reader031.vdocument.in/reader031/viewer/2022020111/55d4c467bb61eb4f7c8b457c/html5/thumbnails/7.jpg)
Socket.io
easy
fast
solves a problem
Dienstag, 24. April 12
![Page 8: Socket io - JSZurich](https://reader031.vdocument.in/reader031/viewer/2022020111/55d4c467bb61eb4f7c8b457c/html5/thumbnails/8.jpg)
Socket.io
is for realtime exchange of data between Server and Client (Browser)
Dienstag, 24. April 12
![Page 9: Socket io - JSZurich](https://reader031.vdocument.in/reader031/viewer/2022020111/55d4c467bb61eb4f7c8b457c/html5/thumbnails/9.jpg)
Realtime?
Dienstag, 24. April 12
![Page 10: Socket io - JSZurich](https://reader031.vdocument.in/reader031/viewer/2022020111/55d4c467bb61eb4f7c8b457c/html5/thumbnails/10.jpg)
setInterval(check, 10)?
Dienstag, 24. April 12
![Page 11: Socket io - JSZurich](https://reader031.vdocument.in/reader031/viewer/2022020111/55d4c467bb61eb4f7c8b457c/html5/thumbnails/11.jpg)
requestAnimationFrame()?
Dienstag, 24. April 12
![Page 12: Socket io - JSZurich](https://reader031.vdocument.in/reader031/viewer/2022020111/55d4c467bb61eb4f7c8b457c/html5/thumbnails/12.jpg)
No.
Dienstag, 24. April 12
![Page 13: Socket io - JSZurich](https://reader031.vdocument.in/reader031/viewer/2022020111/55d4c467bb61eb4f7c8b457c/html5/thumbnails/13.jpg)
Real realtime.
Dienstag, 24. April 12
![Page 14: Socket io - JSZurich](https://reader031.vdocument.in/reader031/viewer/2022020111/55d4c467bb61eb4f7c8b457c/html5/thumbnails/14.jpg)
Websockets!
Dienstag, 24. April 12
![Page 15: Socket io - JSZurich](https://reader031.vdocument.in/reader031/viewer/2022020111/55d4c467bb61eb4f7c8b457c/html5/thumbnails/15.jpg)
Dienstag, 24. April 12
![Page 16: Socket io - JSZurich](https://reader031.vdocument.in/reader031/viewer/2022020111/55d4c467bb61eb4f7c8b457c/html5/thumbnails/16.jpg)
Socket.io
Websocket wrapper
Node.js Module
A deeper look.
Dienstag, 24. April 12
![Page 17: Socket io - JSZurich](https://reader031.vdocument.in/reader031/viewer/2022020111/55d4c467bb61eb4f7c8b457c/html5/thumbnails/17.jpg)
Socket.io
Socket between Server & Client
Send data from one to other
Receive data via events
asynchronous
A deeper look.
Dienstag, 24. April 12
![Page 18: Socket io - JSZurich](https://reader031.vdocument.in/reader031/viewer/2022020111/55d4c467bb61eb4f7c8b457c/html5/thumbnails/18.jpg)
Socket.io
emit(event, data)
on(event, handler)
Easyness is easy.
Dienstag, 24. April 12
![Page 19: Socket io - JSZurich](https://reader031.vdocument.in/reader031/viewer/2022020111/55d4c467bb61eb4f7c8b457c/html5/thumbnails/19.jpg)
Socket.io
Even Setup is easy!
Easyness is easy.
Dienstag, 24. April 12
![Page 20: Socket io - JSZurich](https://reader031.vdocument.in/reader031/viewer/2022020111/55d4c467bb61eb4f7c8b457c/html5/thumbnails/20.jpg)
Socket.ioServer Setup
npm install socket.io
Dienstag, 24. April 12
![Page 21: Socket io - JSZurich](https://reader031.vdocument.in/reader031/viewer/2022020111/55d4c467bb61eb4f7c8b457c/html5/thumbnails/21.jpg)
Socket.ioClient Setup
Dienstag, 24. April 12
![Page 22: Socket io - JSZurich](https://reader031.vdocument.in/reader031/viewer/2022020111/55d4c467bb61eb4f7c8b457c/html5/thumbnails/22.jpg)
Socket.io
Compatibility
Scalability
Performance
Robustness
The Killers.
Dienstag, 24. April 12
![Page 23: Socket io - JSZurich](https://reader031.vdocument.in/reader031/viewer/2022020111/55d4c467bb61eb4f7c8b457c/html5/thumbnails/23.jpg)
Socket.ioCompatibility
Dienstag, 24. April 12
![Page 24: Socket io - JSZurich](https://reader031.vdocument.in/reader031/viewer/2022020111/55d4c467bb61eb4f7c8b457c/html5/thumbnails/24.jpg)
Socket.ioCompatibility
Dienstag, 24. April 12
![Page 25: Socket io - JSZurich](https://reader031.vdocument.in/reader031/viewer/2022020111/55d4c467bb61eb4f7c8b457c/html5/thumbnails/25.jpg)
Socket.ioCompatibility
Websocket
Chrome 16, Firefox 11, IE 10, Safari 5. Opera 10
Built-in, disabled: Chrome 6, Firefox 4
Dienstag, 24. April 12
![Page 26: Socket io - JSZurich](https://reader031.vdocument.in/reader031/viewer/2022020111/55d4c467bb61eb4f7c8b457c/html5/thumbnails/26.jpg)
Dienstag, 24. April 12
![Page 27: Socket io - JSZurich](https://reader031.vdocument.in/reader031/viewer/2022020111/55d4c467bb61eb4f7c8b457c/html5/thumbnails/27.jpg)
Socket.ioCompatibility - Holy Fallbacks!
WebSocket
Flash Socket
AJAX long polling
AJAX multipart streaming
Forever IFrame
JSONP Polling
Dienstag, 24. April 12
![Page 28: Socket io - JSZurich](https://reader031.vdocument.in/reader031/viewer/2022020111/55d4c467bb61eb4f7c8b457c/html5/thumbnails/28.jpg)
Socket.ioCompatibility - Holy Fallbacks!
Socket.io falls back to support
IE 5.5+Safari 3+ Chrome 4+ Firefox 3+ Opera 10+
Dienstag, 24. April 12
![Page 29: Socket io - JSZurich](https://reader031.vdocument.in/reader031/viewer/2022020111/55d4c467bb61eb4f7c8b457c/html5/thumbnails/29.jpg)
Socket.ioScalability, Performance, Robustness
:)
Dienstag, 24. April 12
![Page 30: Socket io - JSZurich](https://reader031.vdocument.in/reader031/viewer/2022020111/55d4c467bb61eb4f7c8b457c/html5/thumbnails/30.jpg)
Use cases
Chats
Realtime Applications
Collaboration Software
Social Networks
Single-page Apps!
Every Project (?)
Dienstag, 24. April 12
![Page 31: Socket io - JSZurich](https://reader031.vdocument.in/reader031/viewer/2022020111/55d4c467bb61eb4f7c8b457c/html5/thumbnails/31.jpg)
Hands-on!Demos.
Dienstag, 24. April 12
![Page 32: Socket io - JSZurich](https://reader031.vdocument.in/reader031/viewer/2022020111/55d4c467bb61eb4f7c8b457c/html5/thumbnails/32.jpg)
Q & A
Dienstag, 24. April 12
![Page 33: Socket io - JSZurich](https://reader031.vdocument.in/reader031/viewer/2022020111/55d4c467bb61eb4f7c8b457c/html5/thumbnails/33.jpg)
#kthxbye
Socket.io official: http://socket.io/
Websocket overview: http://davidwalsh.name/websocket
Dienstag, 24. April 12