j web socket
TRANSCRIPT
![Page 1: J web socket](https://reader035.vdocuments.mx/reader035/viewer/2022062905/5478e79cb4af9f86798b46da/html5/thumbnails/1.jpg)
Boosting Web Communicationwith WebSockets
jWebSocket – The Open Source Solution for Real-Time Web Developers
SDC 2011April 04-05, 2011
Göteborg Convention CentreGöteborg, Sweden
Alexander Schulze & Claudia GillrathInnotrade GmbH, Germany
![Page 2: J web socket](https://reader035.vdocuments.mx/reader035/viewer/2022062905/5478e79cb4af9f86798b46da/html5/thumbnails/2.jpg)
Boosting Web Communication with WebSockets 205.04.2011
Follow the presentation at...
http://jwebsocket.org/sdcEnjoy the slides in realtime
driven by WebSockets
Realtime Presentation
![Page 3: J web socket](https://reader035.vdocuments.mx/reader035/viewer/2022062905/5478e79cb4af9f86798b46da/html5/thumbnails/3.jpg)
Boosting Web Communication with WebSockets 305.04.2011
Agenda
• Introduction:Status, Technology, Targets
• Use and Benefits vs. http• Models, Migration and Implementation• Solutions, Aspects and Prospects• Discussion
Today's Session
![Page 4: J web socket](https://reader035.vdocuments.mx/reader035/viewer/2022062905/5478e79cb4af9f86798b46da/html5/thumbnails/4.jpg)
The Web becomes more and more
Necessity of evolution to a platform for real-time data exchange
WebSocket technology is the fundament
Boosting Web Communication with WebSockets 405.04.2011
Introduction
pervasive interactive social mobile
![Page 5: J web socket](https://reader035.vdocuments.mx/reader035/viewer/2022062905/5478e79cb4af9f86798b46da/html5/thumbnails/5.jpg)
Status of Web Communication
Boosting Web Communication with WebSockets 505.04.2011
The HTTP Protocol• Designed for document transmission
• Cumbersome, nearly real-time tricks• Polling, Long-Polling• Reverse-AJAX, Comet etc.
• Ultimately non-standardized hacks
• Remains a Request/Response mechanism
![Page 6: J web socket](https://reader035.vdocuments.mx/reader035/viewer/2022062905/5478e79cb4af9f86798b46da/html5/thumbnails/6.jpg)
Boosting Web Communication with WebSockets 605.04.2011
WebSockets – Technology
What are WebSockets?
• Bidirectional, full-duplex, permanent TCP connections 400 times less overhead ⅓ of latency
• Standardized in HTML5 by W3C & IETF protects investments
• Single TCP port saves 50% server resources
![Page 7: J web socket](https://reader035.vdocuments.mx/reader035/viewer/2022062905/5478e79cb4af9f86798b46da/html5/thumbnails/7.jpg)
Boosting Web Communication with WebSockets 705.04.2011
WebSockets – Technology
What else?
• Designed for interactiveWeb Applications
• Open for all kind ofstationary and mobilebrowser based and native apps
• Not just a protocol, but a new paradigmRequest/Response Real-Time Communication
![Page 8: J web socket](https://reader035.vdocuments.mx/reader035/viewer/2022062905/5478e79cb4af9f86798b46da/html5/thumbnails/8.jpg)
Demand from Developers, Providers and Users
• CompatibilityInteroperability
• IndependencyIntegratability
• ReliabilitySecurity
Boosting Web Communication with WebSockets 805.04.2011
WebSockets – Targets
![Page 9: J web socket](https://reader035.vdocuments.mx/reader035/viewer/2022062905/5478e79cb4af9f86798b46da/html5/thumbnails/9.jpg)
Demand from Developers, Providers and Users
• AvailabilityScalability
• ExtendabilityFlexibility
• SimplicityMaintainability
Boosting Web Communication with WebSockets 905.04.2011
WebSockets – Targets
![Page 10: J web socket](https://reader035.vdocuments.mx/reader035/viewer/2022062905/5478e79cb4af9f86798b46da/html5/thumbnails/10.jpg)
Boosting Web Communication with WebSockets 1005.04.2011
WebSockets – Concept
The Concept• Framework vs. Client/Server• 3rd Party Engines and Servers• Message Routing, Stream,
Send, Broadcast, Events, Channels
• Tokens and Plug-ins• Listeners and Apps• Filters and Encryption
![Page 11: J web socket](https://reader035.vdocuments.mx/reader035/viewer/2022062905/5478e79cb4af9f86798b46da/html5/thumbnails/11.jpg)
Boosting Web Communication with WebSockets 1105.04.2011
WebSockets – Models
jWebSocket Framework
TCPNIO
JBossNetty
Glass-Fish
EclipseJetty
SystemPlug-in
CustomApp
3rd-PartyApp
CustomPlug-in
jWebSocket Framework
• Replacible Engines• Stand-Alone or
Embedded Operation• Plug-ins and
WebSocket Apps• Completely open
Engines
Plug-ins Apps
![Page 12: J web socket](https://reader035.vdocuments.mx/reader035/viewer/2022062905/5478e79cb4af9f86798b46da/html5/thumbnails/12.jpg)
Boosting Web Communication with WebSockets 1205.04.2011
WebSockets – Models
XMLJSON
jWebSocket Tokens
• WebSocket nodes are stupid• Need for a common language
to understand incoming packets• Dataformats
JSON, XML or CSV• Solution: Abstract Data objects,
so called „Tokens“ jWebSocket Framework
Token-Processor
NativeClient
BrowserClient
![Page 13: J web socket](https://reader035.vdocuments.mx/reader035/viewer/2022062905/5478e79cb4af9f86798b46da/html5/thumbnails/13.jpg)
Boosting Web Communication with WebSockets 1305.04.2011
WebSockets – Interoperability
jWebSocket Framework
WebSocket Services
WebSocketApps
X-Browser-Compatibility
• Native Support inChrome 4+, FF 4,Safari 5, Opera 11
• Flash-Fallback forIE and older Browsers
• Long-Polling orComet Fallback
![Page 14: J web socket](https://reader035.vdocuments.mx/reader035/viewer/2022062905/5478e79cb4af9f86798b46da/html5/thumbnails/14.jpg)
jWebSocket Framework
WebSocket Services
WebSocketApps
Boosting Web Communication with WebSockets 1405.04.2011
WebSockets – Interoperability
X-Platform-Compatibility
• Android (Dalvik VM)• iPad/iPhone (iOS)• Symbian/BlackBerry
(Java ME)• Windows Phone and
Samsung Bada pending
![Page 15: J web socket](https://reader035.vdocuments.mx/reader035/viewer/2022062905/5478e79cb4af9f86798b46da/html5/thumbnails/15.jpg)
jWebSocket Security
• SSL-Encryption• wss://[host][:port][/path]...• Authentication & Authorization• Filter & Validation• Virus-Scanning• Spam-Filter & Banning
Boosting Web Communication with WebSockets 1505.04.2011
WebSockets – Models
wss://
jWebSocket Framework
In System-Filter Out
Client
In Custom-Filter Out
Filterchain
![Page 16: J web socket](https://reader035.vdocuments.mx/reader035/viewer/2022062905/5478e79cb4af9f86798b46da/html5/thumbnails/16.jpg)
Boosting Web Communication with WebSockets 1605.04.2011
WebSockets – Models
jWebSocket Framework
Collaboration SuiteOnline-Game
Channel 2„WorkTogether“
Channel 1„PlayTheGame“
Player 1 Player 2 Collab.Memb1
Collab.Memb2
jWebSocket Channels
• Publish/SubscribeMechanism
• Private and PublicChannels
• Authentication• Separate Applications
![Page 17: J web socket](https://reader035.vdocuments.mx/reader035/viewer/2022062905/5478e79cb4af9f86798b46da/html5/thumbnails/17.jpg)
Boosting Web Communication with WebSockets 1705.04.2011
jWebSocket Events• Event-Driven Programming
using the Observable Pattern
• Objects are „observable“
• Clients or other instancesobserve objects andare notified by events
• Easy, flexible and effective
WebSocket –Models
Observ
e
Observer 1( Client )
Observer 2( Client )
ws://or wss://
Observable (Server)
![Page 18: J web socket](https://reader035.vdocuments.mx/reader035/viewer/2022062905/5478e79cb4af9f86798b46da/html5/thumbnails/18.jpg)
Boosting Web Communication with WebSockets 1805.04.2011
WebSockets – Models
Synchronization Backbone
Client
Node 3Node 2Node 1
Re-director
LoadBal.
ClientjWebSocket Clusters
• Load-Balancer• Redirector• Backbone simply
WebSocket based• External
Service Nodes
Ext.Serv.Node
![Page 19: J web socket](https://reader035.vdocuments.mx/reader035/viewer/2022062905/5478e79cb4af9f86798b46da/html5/thumbnails/19.jpg)
Boosting Web Communication with WebSockets 1905.04.2011
jWebSocket Plug-ins
• JDBC, SMTP, XMPP
• Remote Procedure CallsC2S-, S2C-, C2C-RPCs
• Object-, Filesharing
• Logging, Stats, Admin
• Chat, Stream, Twitter
WebSocket – Plug-ins
JDBC SMTP XMPP RPC ...
Brows.Client
Deskt.Client
CustomClient
Stream Sharing Chat Twitter ...
MobileClient
jWebSocket Framework
![Page 20: J web socket](https://reader035.vdocuments.mx/reader035/viewer/2022062905/5478e79cb4af9f86798b46da/html5/thumbnails/20.jpg)
Boosting Web Communication with WebSockets 2005.04.2011
WebSockets – Application Areas
Where to use WebSockets?
• Chats, Messaging and Mail• Remote Control and Monitoring• Push and Streaming Services, Financial Ticker,
Weather, News, Video• Bidirectional Remote Procedure Calls• Sharing Objects, Databases, Files• Uniting Stationary and Mobile Applications
![Page 21: J web socket](https://reader035.vdocuments.mx/reader035/viewer/2022062905/5478e79cb4af9f86798b46da/html5/thumbnails/21.jpg)
Boosting Web Communication with WebSockets 2105.04.2011
WebSockets – Prospects
What is the future of WebSockets?
• New Dimension of Online-Collaboration• New Level of Online-Entertainment• New Opportunities for Online-Education• New Social Participation and Contribution
What comes to your mind?
![Page 22: J web socket](https://reader035.vdocuments.mx/reader035/viewer/2022062905/5478e79cb4af9f86798b46da/html5/thumbnails/22.jpg)
Questions & AnswersAlexander Schulze
Forum & Download:http://jwebsocket.org, @jWebSocket
Boosting Web Communication with WebSockets 2205.04.2011
Thank you for your attention!