220 likes | 337 Vues
Discover how WebSockets revolutionize web communication for real-time applications. This presentation, by Alexander Schulze and Claudia Gillrath from Innotrade GmbH, explores the evolution of web technologies from HTTP to WebSockets. Learn about the coreconcepts, benefits, and implementation strategies of jWebSocket, an open-source framework designed to handle real-time data exchange seamlessly. The session covers compatibility, interoperability, and security, showcasing how to leverage WebSockets for robust web applications. Join us for a deep dive into the future of web communication!
E N D
Boosting Web Communication withWebSockets jWebSocket – The Open Source Solution for Real-Time Web Developers Alexander Schulze & Claudia Gillrath Innotrade GmbH, Germany SDC 2011 April 04-05, 2011 Göteborg Convention Centre Göteborg, Sweden
Realtime Presentation Follow the presentation at... http://jwebsocket.org/sdc Enjoy the slides in realtimedriven by WebSockets Boosting Web Communication with WebSockets
Today's Session Agenda • Introduction:Status, Technology, Targets • Use and Benefits vs. http • Models, Migration and Implementation • Solutions, Aspects and Prospects • Discussion Boosting Web Communication with WebSockets
Introduction The Web becomes more and more Necessity of evolution to a platform for real-time data exchange WebSocket technology is the fundament pervasive interactive social mobile Boosting Web Communication with WebSockets
Status of Web Communication 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 Boosting Web Communication with WebSockets
WebSockets – Technology What are WebSockets? • Bidirectional, full-duplex, permanent TCP connections 4oo times less overhead⅓ of latency • Standardized in HTML5 by W3C and IETF protects investments • Single TCP port saves 50% server resources Boosting Web Communication with WebSockets
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 Comm. Boosting Web Communication with WebSockets
WebSockets – Targets Demand from Developers, Providers and Users • CompatibilityInteroperability • IndependencyIntegratability • ReliabilitySecurity Boosting Web Communication with WebSockets
WebSockets – Targets Demand from Developers, Providers and Users • AvailabilityScalability • ExtendabilityFlexibility • SimplicityMaintainability Boosting Web Communication with WebSockets
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 Boosting Web Communication with WebSockets
WebSockets – Models jWebSocket Framework • ReplacibleEngines • Stand-AloneorEmbedded Operation • Plug-ins andWebSocketApps • Completelyopen Plug-ins Apps Custom Plug-in 3rd-Party App System Plug-in Custom App jWebSocket Framework TCP NIO Eclipse Jetty Glass- Fish JBoss Netty Engines Boosting Web Communication with WebSockets
WebSockets – Models jWebSocketTokens • WebSocketnodesare stupid • Needfor a commonlanguageto understandincomingpackets • DataformatsJSON, XML or CSV • Solution: Abstract Data objects, so called „Tokens“ Browser Client Native Client JSON XML Token-Processor jWebSocket Framework Boosting Web Communication with WebSockets
WebSockets – Interoperability X-Browser-Compatibility • Native Support inChrome 4+, FF 4,Safari 5, Opera 11 • Flash-Fallback forIE and older Browsers • Long-PollingorComet Fallback jWebSocket Framework WebSocket Services WebSocketApps Boosting Web Communication with WebSockets
WebSockets – Interoperability X-Platform-Compatibility • Android (Dalvik VM) • iPad/iPhone (iOS) • Symbian/BlackBerry(Java ME) • Windows Phone andSamsung Badapending jWebSocket Framework WebSocket Services WebSocketApps Boosting Web Communication with WebSockets
WebSockets – Models jWebSocket Security • SSL-Encryption • wss://[host][:port][/path]... • Authentication & Authorization • Filter & Validation • Virus-Scanning • Spam-Filter & Banning Client wss:// In Custom-Filter Out In System-Filter Out Filterchain jWebSocket Framework Boosting Web Communication with WebSockets
WebSockets – Models jWebSocketChannels • Publish/SubscribeMechanism • Private and PublicChannels • Authentication • SeparateApplications Player 2 Collab. Memb2 Player 1 Collab. Memb1 Channel 2 „WorkTogether“ Channel 1 „PlayTheGame“ jWebSocket Framework Collaboration Suite Online-Game Boosting Web CommunicationwithWebSockets
WebSocket –Models 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 Observer 1( Client ) Observer 2( Client ) Observe ws://or wss:// Event Observable (Server) Boosting Web CommunicationwithWebSockets
WebSockets – Models jWebSocket Clusters • Load-Balancer • Redirector • BackbonesimplyWebSocketbased • ExternalService Nodes Client Client Load Bal. Re-director Ext. Serv.Node Node 1 Node 2 Node 3 Synchronization Backbone Boosting Web Communication with WebSockets
WebSocket – Plug-ins jWebSocket Plug-ins • JDBC, SMTP, XMPP • Remote Procedure CallsC2S-, S2C-, C2C-RPCs • Object-, Filesharing • Logging, Stats, Admin • Chat, Stream, Twitter BrowserClient MobileClient DesktopClient CustomClient jWebSocket Framework JDBC SMTP XMPP RPC ... Stream Sharing Chat Twitter ... Boosting Web CommunicationwithWebSockets
WebSockets – ApplicationAreas 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 Boosting Web Communication with WebSockets
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? Boosting Web Communication with WebSockets
Thankyouforyourattention! Questions & Answers Alexander Schulzea.schulze@jwebsocket.org Forum & Download: http://jwebsocket.org, @jWebSocket Boosting Web CommunicationwithWebSockets