Boosting Web Communication with WebSockets jWebSocket – The Open Source Solution for Real-Time Web Developers SDC 2011 April 04-05, 2011 Göteborg Convention Centre Göteborg, Sweden Alexander Schulze & Claudia Gillrath Innotrade GmbH, Germany
Follow the presentation at... http://jwebsocket.org/sdc Enjoy the slides in realtime driven by WebSockets Realtime Presentation Boosting Web Communication with WebSockets 05.04.2011
Agenda Introduction: Status, Technology, Targets Use and Benefits vs. http Models, Migration and Implementation Solutions, Aspects and Prospects Discussion Today's Session Boosting Web Communication with WebSockets 05.04.2011
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 05.04.2011 Introduction pervasive interactive social mobile
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 05.04.2011
What are WebSockets? Bidirectional, f ull-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 Boosting Web Communication with WebSockets 05.04.2011 WebSockets – Technology
What else? Designed for interactive Web Applications Open for all kind of stationary and mobile browser based and native apps Not just a protocol, but a new paradigm Request/Response  Real-Time Communication Boosting Web Communication with WebSockets 05.04.2011 WebSockets – Technology
Demand from Developers, Providers and Users Compatibility Interoperability Independency Integratability Reliability Security Boosting Web Communication with WebSockets 05.04.2011 WebSockets – Targets
Demand from Developers, Providers and Users Availability Scalability Extendability Flexibility Simplicity Maintainability Boosting Web Communication with WebSockets 05.04.2011 WebSockets – Targets
The Concept Framework vs. Client/Server 3 rd  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 05.04.2011 WebSockets – Concept
Boosting Web Communication with WebSockets 05.04.2011 WebSockets – Models jWebSocket Framework TCP NIO JBoss Netty Glass- Fish Eclipse Jetty System Plug-in Custom App 3 rd -Party App Custom Plug-in jWebSocket Framework Replacible Engines Stand-Alone or Embedded Operation Plug-ins and WebSocket Apps Completely open Engines Plug-ins Apps
Boosting Web Communication with WebSockets 05.04.2011 WebSockets – Models XML JSON 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 Native Client Browser Client
Boosting Web Communication with WebSockets 05.04.2011 WebSockets – Interoperability jWebSocket Framework WebSocket Services WebSocket Apps X-Browser-Compatibility Native Support in Chrome 4+, FF 4, Safari 5, Opera 11 Flash-Fallback for IE and older Browsers Long-Polling or Comet Fallback
jWebSocket Framework WebSocket Services WebSocket Apps Boosting Web Communication with WebSockets 05.04.2011 WebSockets – Interoperability X-Platform-Compatibility Android (Dalvik VM) iPad/iPhone (iOS) Symbian/BlackBerry (Java ME) Windows Phone and Samsung Bada pending
jWebSocket Security SSL-Encryption wss://[host][:port][/path]... Authentication & Authorization Filter & Validation Virus-Scanning Spam-Filter & Banning Boosting Web Communication with WebSockets 05.04.2011 WebSockets – Models wss:// jWebSocket Framework In  System-Filter  Out Client In  Custom-Filter  Out Filterchain
Boosting Web Communication with WebSockets 05.04.2011 WebSockets – Models jWebSocket Framework Collaboration Suite Online-Game Channel 2 „ WorkTogether“ Channel 1 „ PlayTheGame“ Player 1 Player 2 Collab. Memb1 Collab. Memb2 jWebSocket Channels Publish/Subscribe Mechanism Private and Public Channels Authentication Separate Applications
jWebSocket Events Event-Driven Programming  using the Observable Pattern Objects are „observable“ Clients or other instances observe objects and are notified by events Easy, flexible and effective WebSocket –Models Boosting Web Communication with WebSockets 05.04.2011 Observe Observer 1 ( Client ) Observer 2 ( Client ) ws:// or  wss:// Observable (Server)
Boosting Web Communication with WebSockets 05.04.2011 WebSockets – Models Synchronization Backbone Client Node 3 Node 2 Node 1 Re-director Load Bal. Client jWebSocket Clusters Load-Balancer Redirector Backbone simply WebSocket based External Service Nodes Ext.Serv. Node
jWebSocket Plug-ins JDBC, SMTP, XMPP Remote Procedure Calls C2S-, S2C-, C2C-RPCs Object-, Filesharing Logging, Stats, Admin Chat, Stream, Twitter WebSocket – Plug-ins Boosting Web Communication with WebSockets 05.04.2011 JDBC SMTP XMPP RPC ... Brows. Client Deskt. Client Custom Client Stream Sharing Chat Twitter ... Mobile Client jWebSocket Framework
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 05.04.2011 WebSockets – Application Areas
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 05.04.2011 WebSockets – Prospects
Questions & Answers Alexander Schulze [email_address] Forum & Download: http://jwebsocket.org, @jWebSocket Boosting Web Communication with WebSockets 05.04.2011 Thank you for your attention!

J web socket

  • 1.
    Boosting Web Communicationwith WebSockets jWebSocket – The Open Source Solution for Real-Time Web Developers SDC 2011 April 04-05, 2011 Göteborg Convention Centre Göteborg, Sweden Alexander Schulze & Claudia Gillrath Innotrade GmbH, Germany
  • 2.
    Follow the presentationat... http://jwebsocket.org/sdc Enjoy the slides in realtime driven by WebSockets Realtime Presentation Boosting Web Communication with WebSockets 05.04.2011
  • 3.
    Agenda Introduction: Status,Technology, Targets Use and Benefits vs. http Models, Migration and Implementation Solutions, Aspects and Prospects Discussion Today's Session Boosting Web Communication with WebSockets 05.04.2011
  • 4.
    The Web becomesmore and more Necessity of evolution to a platform for real-time data exchange WebSocket technology is the fundament Boosting Web Communication with WebSockets 05.04.2011 Introduction pervasive interactive social mobile
  • 5.
    Status of WebCommunication 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 05.04.2011
  • 6.
    What are WebSockets?Bidirectional, f ull-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 Boosting Web Communication with WebSockets 05.04.2011 WebSockets – Technology
  • 7.
    What else? Designedfor interactive Web Applications Open for all kind of stationary and mobile browser based and native apps Not just a protocol, but a new paradigm Request/Response Real-Time Communication Boosting Web Communication with WebSockets 05.04.2011 WebSockets – Technology
  • 8.
    Demand from Developers,Providers and Users Compatibility Interoperability Independency Integratability Reliability Security Boosting Web Communication with WebSockets 05.04.2011 WebSockets – Targets
  • 9.
    Demand from Developers,Providers and Users Availability Scalability Extendability Flexibility Simplicity Maintainability Boosting Web Communication with WebSockets 05.04.2011 WebSockets – Targets
  • 10.
    The Concept Frameworkvs. Client/Server 3 rd 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 05.04.2011 WebSockets – Concept
  • 11.
    Boosting Web Communicationwith WebSockets 05.04.2011 WebSockets – Models jWebSocket Framework TCP NIO JBoss Netty Glass- Fish Eclipse Jetty System Plug-in Custom App 3 rd -Party App Custom Plug-in jWebSocket Framework Replacible Engines Stand-Alone or Embedded Operation Plug-ins and WebSocket Apps Completely open Engines Plug-ins Apps
  • 12.
    Boosting Web Communicationwith WebSockets 05.04.2011 WebSockets – Models XML JSON 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 Native Client Browser Client
  • 13.
    Boosting Web Communicationwith WebSockets 05.04.2011 WebSockets – Interoperability jWebSocket Framework WebSocket Services WebSocket Apps X-Browser-Compatibility Native Support in Chrome 4+, FF 4, Safari 5, Opera 11 Flash-Fallback for IE and older Browsers Long-Polling or Comet Fallback
  • 14.
    jWebSocket Framework WebSocketServices WebSocket Apps Boosting Web Communication with WebSockets 05.04.2011 WebSockets – Interoperability X-Platform-Compatibility Android (Dalvik VM) iPad/iPhone (iOS) Symbian/BlackBerry (Java ME) Windows Phone and Samsung Bada pending
  • 15.
    jWebSocket Security SSL-Encryptionwss://[host][:port][/path]... Authentication & Authorization Filter & Validation Virus-Scanning Spam-Filter & Banning Boosting Web Communication with WebSockets 05.04.2011 WebSockets – Models wss:// jWebSocket Framework In System-Filter Out Client In Custom-Filter Out Filterchain
  • 16.
    Boosting Web Communicationwith WebSockets 05.04.2011 WebSockets – Models jWebSocket Framework Collaboration Suite Online-Game Channel 2 „ WorkTogether“ Channel 1 „ PlayTheGame“ Player 1 Player 2 Collab. Memb1 Collab. Memb2 jWebSocket Channels Publish/Subscribe Mechanism Private and Public Channels Authentication Separate Applications
  • 17.
    jWebSocket Events Event-DrivenProgramming using the Observable Pattern Objects are „observable“ Clients or other instances observe objects and are notified by events Easy, flexible and effective WebSocket –Models Boosting Web Communication with WebSockets 05.04.2011 Observe Observer 1 ( Client ) Observer 2 ( Client ) ws:// or wss:// Observable (Server)
  • 18.
    Boosting Web Communicationwith WebSockets 05.04.2011 WebSockets – Models Synchronization Backbone Client Node 3 Node 2 Node 1 Re-director Load Bal. Client jWebSocket Clusters Load-Balancer Redirector Backbone simply WebSocket based External Service Nodes Ext.Serv. Node
  • 19.
    jWebSocket Plug-ins JDBC,SMTP, XMPP Remote Procedure Calls C2S-, S2C-, C2C-RPCs Object-, Filesharing Logging, Stats, Admin Chat, Stream, Twitter WebSocket – Plug-ins Boosting Web Communication with WebSockets 05.04.2011 JDBC SMTP XMPP RPC ... Brows. Client Deskt. Client Custom Client Stream Sharing Chat Twitter ... Mobile Client jWebSocket Framework
  • 20.
    Where to useWebSockets? 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 05.04.2011 WebSockets – Application Areas
  • 21.
    What is thefuture 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 05.04.2011 WebSockets – Prospects
  • 22.
    Questions & AnswersAlexander Schulze [email_address] Forum & Download: http://jwebsocket.org, @jWebSocket Boosting Web Communication with WebSockets 05.04.2011 Thank you for your attention!