SlideShare a Scribd company logo
1 of 36
Download to read offline
Building	
  Living	
  Web	
  
                                                                                                ApplicaEons	
  with	
  	
  
                                                                                               HTML5	
  WebSockets	
  


                                  Creators	
  of	
  HTML5	
  WebSocket	
                                                                  WebSocket	
  Gateway	
  

        High	
  Performance	
                                                                                 Enterprise	
  Support	
  




                                                                                  Peter	
  Moskovits	
  -­‐	
  @pmoskovi	
  
                                                                                  Developer	
  Evangelist	
  
1	
                                          Copyright	
  ©	
  2012	
  Kaazing	
  Corpora3on.	
  All	
  Rights	
  Reserved.	
  
Agenda	
  



        •  Is	
  There	
  a	
  Problem?	
  
        •  How	
  Serious	
  is	
  the	
  Problem?	
  
        •  Any	
  Hope?	
  
        •  Demos	
  
        	
  




                             OFFER	
  BETTER	
  EXPERIENCE	
  EVERYWHERE	
  

2	
                                Copyright	
  ©	
  2012	
  Kaazing	
  Corpora3on.	
  All	
  Rights	
  Reserved.	
  
Architectural	
  (R)evoluEon	
  




         Client-­‐Server	
  

                                                                Full	
  duplex	
  




                       Client	
  
                                                                                                                         Back-­‐end	
  server	
  




3	
                                 Copyright	
  ©	
  2012	
  Kaazing	
  Corpora3on.	
  All	
  Rights	
  Reserved.	
  
Architectural	
  (R)evoluEon	
  



         Legacy	
  Web	
  
                                                                      Half	
  Duplex	
  




                                                                         Web	
  

                      Browser	
  
                                                                                                                          Web	
  
                                                                                                                         Server	
  




4	
                                 Copyright	
  ©	
  2012	
  Kaazing	
  Corpora3on.	
  All	
  Rights	
  Reserved.	
  
Architectural	
  (R)evoluEon	
  



          Legacy	
  Web	
  
                                                      Half	
  Duplex	
                                                                 Full	
  duplex	
  




                                                           Web	
  

                       Browser	
  
                                                                                                                    Web	
      Middleware	
          Back-­‐end	
  	
  
                                                                                                                    Tier	
                            server	
  




5	
                                  Copyright	
  ©	
  2012	
  Kaazing	
  Corpora3on.	
  All	
  Rights	
  Reserved.	
  
HTTP:	
  Polling	
  &	
  Long	
  Polling	
  




                                                                                                    I	
  want	
  Desktop-­‐
                                                                                                    like	
  InteracEons	
  




6	
                            Copyright	
  ©	
  2012	
  Kaazing	
  Corpora3on.	
  All	
  Rights	
  Reserved.	
  
A	
  Parallel	
  Universe	
  Without	
  Mailman	
  



7	
                Copyright	
  ©	
  2012	
  Kaazing	
  Corpora3on.	
  All	
  Rights	
  Reserved.	
  
HTTP:	
  Polling	
  &	
  Long	
  Polling	
  




             HTTP	
  
             •    Was	
  designed	
  to	
  serve	
  sta3c	
  documents	
  
             •    Half	
  duplex,	
  high	
  latency	
  
             •    Overhead:	
  800-­‐2000	
  bytes	
  
             •    Complex	
  architecture:	
  plugins,	
  polling,	
  legacy	
  applica3on	
  servers	
  
             •    Expensive	
  to	
  "Webscale"	
  applica3ons	
  




8	
                                   Copyright	
  ©	
  2012	
  Kaazing	
  Corpora3on.	
  All	
  Rights	
  Reserved.	
  
HTTP	
  Overhead	
  




                                                                                                                788	
  bytes	
  +	
  1	
  byte	
  




9	
                        Copyright	
  ©	
  2012	
  Kaazing	
  Corpora3on.	
  All	
  Rights	
  Reserved.	
  
Workarounds	
  and	
  Hacks	
  




         AJAX:	
  Asynchronous	
  JavaScript	
  and	
  XML	
                                         Lack	
  of	
  standard	
  implementa3on	
  
         Used	
  for	
  building	
  highly	
  interac3ve	
  Web	
  apps	
                            Comet	
  adds	
  lots	
  of	
  complexity	
  
         Content	
  can	
  change	
  without	
  full	
  page	
  refresh	
  
         User-­‐perceived	
  low	
  latency	
  
         "Real-­‐3me"	
  o`en	
  achieved	
  using	
  polling	
  and	
  
         long-­‐polling	
  

10	
                                             Copyright	
  ©	
  2012	
  Kaazing	
  Corpora3on.	
  All	
  Rights	
  Reserved.	
  
Workarounds	
  and	
  Hacks	
  




11	
                        Copyright	
  ©	
  2012	
  Kaazing	
  Corpora3on.	
  All	
  Rights	
  Reserved.	
  
HTML5	
  WebSocket	
  


         §    Extends	
  TCP	
  across	
  the	
  Web	
  
                •  Full-­‐duplex,	
  single	
  socket,	
  very	
  
                   low	
  overhead	
  
                •  Shares	
  port	
  with	
  	
  HTTP	
  (80/443)	
  
                •  Enables	
  new	
  classes	
  of	
  
                   networked	
  apps	
  
         §    W3C	
  API	
  (JavaScript)	
  
         §    IETF	
  Protocol	
  




12	
                                    Copyright	
  ©	
  2012	
  Kaazing	
  Corpora3on.	
  All	
  Rights	
  Reserved.	
  
Architectural	
  (R)evoluEon	
  



           Legacy	
  Web	
  
                                                       Half	
  Duplex	
                                                                 Full	
  duplex	
  




                                                            Web	
  

                        Browser	
  
                                                                                                                     Web	
      Middleware	
          Back-­‐end	
  	
  
                                                                                                                     Tier	
                            server	
  




13	
                                  Copyright	
  ©	
  2012	
  Kaazing	
  Corpora3on.	
  All	
  Rights	
  Reserved.	
  
Architectural	
  (R)evoluEon	
  



           Living	
  Web	
  

                                                     WebSocket	
                                                    Full	
  duplex	
  



                                                          Web	
  

                                                                                               WebSocket	
  Server	
                     Back-­‐end	
  	
  
                                                                                                                                          server	
  




14	
                           Copyright	
  ©	
  2012	
  Kaazing	
  Corpora3on.	
  All	
  Rights	
  Reserved.	
  
Legacy	
  Web	
  
                                                    Half	
  Duplex	
                                                                       Full	
  duplex	
  




                                                         Web	
  

                      Browser	
  
                                                                                                                   Web	
         Middleware	
             Back-­‐end	
  	
  
                                                                                                                   Tier	
                                  server	
  


         Living	
  Web	
  

                                                          WebSocket	
                                                         Full	
  duplex	
  



                                                              Web	
  

                                                                                                    WebSocket	
  Server	
                          Back-­‐end	
  	
  
                                                                                                                                                    server	
  

16	
                                Copyright	
  ©	
  2012	
  Kaazing	
  Corpora3on.	
  All	
  Rights	
  Reserved.	
  
Browser	
  Support	
  




17	
                        Copyright	
  ©	
  2012	
  Kaazing	
  Corpora3on.	
  All	
  Rights	
  Reserved.	
  
Can	
  I	
  Use?	
  


          caniuse.com	
  




18	
                            Copyright	
  ©	
  2012	
  Kaazing	
  Corpora3on.	
  All	
  Rights	
  Reserved.	
  
Can	
  I	
  Use?	
  




19	
                            Copyright	
  ©	
  2012	
  Kaazing	
  Corpora3on.	
  All	
  Rights	
  Reserved.	
  
Can	
  I	
  Use?	
  
          websocketstest.com	
  




20	
                            Copyright	
  ©	
  2012	
  Kaazing	
  Corpora3on.	
  All	
  Rights	
  Reserved.	
  
How	
  Can	
  I	
  Use?	
  




21	
                              Copyright	
  ©	
  2012	
  Kaazing	
  Corpora3on.	
  All	
  Rights	
  Reserved.	
  
How	
  Can	
  I	
  Use?	
  




22	
                              Copyright	
  ©	
  2012	
  Kaazing	
  Corpora3on.	
  All	
  Rights	
  Reserved.	
  
The	
  WebSocket	
  Handshake	
  




23	
                       Copyright	
  ©	
  2012	
  Kaazing	
  Corpora3on.	
  All	
  Rights	
  Reserved.	
  
WebSocket	
  Frames	
  




         §    Only	
  a	
  few	
  header	
  bytes	
  
         §    Data	
  may	
  be	
  text	
  or	
  binary	
  
         §    Frames	
  from	
  client	
  to	
  server	
  are	
  masked	
  (XORed	
  w/	
  
               random	
  value)	
  to	
  avoid	
  confusing	
  proxies	
  




24	
                                Copyright	
  ©	
  2012	
  Kaazing	
  Corpora3on.	
  All	
  Rights	
  Reserved.	
  
InspecEng	
  WebSocket	
  Frames	
  

               Available	
  today	
  in	
  Chromium	
  and	
  Chrome	
  Canary	
  




25	
                                Copyright	
  ©	
  2012	
  Kaazing	
  Corpora3on.	
  All	
  Rights	
  Reserved.	
  
Demo!	
  
         Inspec,ng	
  WebSocket	
  
                Frames	
  




26	
        Copyright	
  ©	
  2012	
  Kaazing	
  Corpora3on.	
  All	
  Rights	
  Reserved.	
  
27	
     Copyright	
  ©	
  2012	
  Kaazing	
  Corpora3on.	
  All	
  Rights	
  Reserved.	
  
28	
     Copyright	
  ©	
  2012	
  Kaazing	
  Corpora3on.	
  All	
  Rights	
  Reserved.	
  
Got	
  WebSockets	
  –	
  Now	
  What?	
  




29	
                         Copyright	
  ©	
  2012	
  Kaazing	
  Corpora3on.	
  All	
  Rights	
  Reserved.	
  
A	
  New	
  World	
  




30	
                             Copyright	
  ©	
  2012	
  Kaazing	
  Corpora3on.	
  All	
  Rights	
  Reserved.	
  
Build	
  Highly	
  Scalable	
  Web	
  Messaging	
  Apps	
  
         	
  




31	
                           Copyright	
  ©	
  2012	
  Kaazing	
  Corpora3on.	
  All	
  Rights	
  Reserved.	
  
Extend	
  the	
  Reach	
  of	
  	
  
         Your	
  Rich	
  Business	
  Protocols	
  to	
  the	
  Web	
  



            Living	
  Web	
  

                                           JMS,	
  AMQP,	
  XMPP/WebSocket	
                                              JMS,	
  AMQP,	
  XMPP/TCP	
  




                                                               Web	
  

                                                                                                         Kaazing	
                               Back-­‐end	
  	
  
                                                                                                    WebSocket	
  Gateway	
                        server	
  




32	
                                 Copyright	
  ©	
  2012	
  Kaazing	
  Corpora3on.	
  All	
  Rights	
  Reserved.	
  
Demos!	
  




33	
     Copyright	
  ©	
  2012	
  Kaazing	
  Corpora3on.	
  All	
  Rights	
  Reserved.	
  
Presso:	
  WebSocket	
  Powered	
  Social	
  HTML5	
  PresentaEon	
  Tool	
  




34	
                                 Copyright	
  ©	
  2012	
  Kaazing	
  Corpora3on.	
  All	
  Rights	
  Reserved.	
  
Demos!	
  




35	
     Copyright	
  ©	
  2012	
  Kaazing	
  Corpora3on.	
  All	
  Rights	
  Reserved.	
  
AddiEonal	
  Resources	
  

                       kaazing.com/download	
  
                       The	
  Zinger:	
  	
  blog.kaazing.com	
  
                       Pro	
  HTML5	
  Programming	
  Guide	
  
                       	
  
                       More	
  Demos	
  &	
  Content	
  	
  
                              •  kaazing.com/demo	
  
                              •  websocket.org	
  
                              •  kaazing.com/about/collateral	
  
                       	
  
                       Kaazing	
  University	
  
                              •  HTML5	
  Fast	
  Track	
  	
  
                              •  HTML5	
  Mobile	
  Mastery	
  
                              •  Kaazing	
  Master	
  Class	
  
                       	
  
                       	
  
                              Rich	
  Real-­‐Time	
  User	
  Experience	
  

36	
                          Copyright	
  ©	
  2012	
  Kaazing	
  Corpora3on.	
  All	
  Rights	
  Reserved.	
  
37	
     Copyright	
  ©	
  2012	
  Kaazing	
  Corpora3on.	
  All	
  Rights	
  Reserved.	
  

More Related Content

What's hot

Dave Carroll Application Services Salesforce
Dave Carroll Application Services SalesforceDave Carroll Application Services Salesforce
Dave Carroll Application Services Salesforce
deimos
 
Top Ten Web Attacks
Top Ten Web Attacks Top Ten Web Attacks
Top Ten Web Attacks
Ajay Ohri
 
vFabric - Ideal Platform for SaaS Apps
vFabric - Ideal Platform for SaaS AppsvFabric - Ideal Platform for SaaS Apps
vFabric - Ideal Platform for SaaS Apps
VMware vFabric
 
WEBSITE HOSTING FOR PNG ORGANISATIONS
WEBSITE HOSTING FOR PNG ORGANISATIONSWEBSITE HOSTING FOR PNG ORGANISATIONS
WEBSITE HOSTING FOR PNG ORGANISATIONS
webhostingguy
 
Wordcamp Thessaloniki 2011 The Nextweb
Wordcamp Thessaloniki 2011 The NextwebWordcamp Thessaloniki 2011 The Nextweb
Wordcamp Thessaloniki 2011 The Nextweb
George Kanellopoulos
 

What's hot (20)

Comet and the Rise of Highly Interactive Websites
Comet and the Rise of Highly Interactive WebsitesComet and the Rise of Highly Interactive Websites
Comet and the Rise of Highly Interactive Websites
 
Velocity 2012: The 90-Minute Mobile Optimization Life Cycle
Velocity 2012: The 90-Minute Mobile Optimization Life CycleVelocity 2012: The 90-Minute Mobile Optimization Life Cycle
Velocity 2012: The 90-Minute Mobile Optimization Life Cycle
 
Ajax World Fall08
Ajax World Fall08Ajax World Fall08
Ajax World Fall08
 
Dave Carroll Application Services Salesforce
Dave Carroll Application Services SalesforceDave Carroll Application Services Salesforce
Dave Carroll Application Services Salesforce
 
Introducing WebLogic 12c OTN Tour 2012
Introducing WebLogic 12c OTN Tour 2012Introducing WebLogic 12c OTN Tour 2012
Introducing WebLogic 12c OTN Tour 2012
 
Top Ten Web Attacks
Top Ten Web Attacks Top Ten Web Attacks
Top Ten Web Attacks
 
vFabric - Ideal Platform for SaaS Apps
vFabric - Ideal Platform for SaaS AppsvFabric - Ideal Platform for SaaS Apps
vFabric - Ideal Platform for SaaS Apps
 
Windows Azure Essentials
Windows Azure EssentialsWindows Azure Essentials
Windows Azure Essentials
 
Servlet 4.0 at GeekOut 2015
Servlet 4.0 at GeekOut 2015Servlet 4.0 at GeekOut 2015
Servlet 4.0 at GeekOut 2015
 
HTTP/2 comes to Java. What Servlet 4.0 means to you. DevNexus 2015
HTTP/2 comes to Java.  What Servlet 4.0 means to you. DevNexus 2015HTTP/2 comes to Java.  What Servlet 4.0 means to you. DevNexus 2015
HTTP/2 comes to Java. What Servlet 4.0 means to you. DevNexus 2015
 
Seatwave Web Peformance Optimisation Case Study
Seatwave Web Peformance Optimisation Case StudySeatwave Web Peformance Optimisation Case Study
Seatwave Web Peformance Optimisation Case Study
 
Word camp nextweb
Word camp nextwebWord camp nextweb
Word camp nextweb
 
Oracle WebLogic Server 12c: Seamless Oracle Database Integration (with NEC, O...
Oracle WebLogic Server 12c: Seamless Oracle Database Integration (with NEC, O...Oracle WebLogic Server 12c: Seamless Oracle Database Integration (with NEC, O...
Oracle WebLogic Server 12c: Seamless Oracle Database Integration (with NEC, O...
 
Web Quick Start with Tribloom: A tale of two wqs implementations
Web Quick Start with Tribloom: A tale of two wqs implementationsWeb Quick Start with Tribloom: A tale of two wqs implementations
Web Quick Start with Tribloom: A tale of two wqs implementations
 
JavaOne 2014 BOF4241 What's Next for JSF?
JavaOne 2014 BOF4241 What's Next for JSF?JavaOne 2014 BOF4241 What's Next for JSF?
JavaOne 2014 BOF4241 What's Next for JSF?
 
Spring MVC 4.2: New and Noteworthy
Spring MVC 4.2: New and NoteworthySpring MVC 4.2: New and Noteworthy
Spring MVC 4.2: New and Noteworthy
 
WEBSITE HOSTING FOR PNG ORGANISATIONS
WEBSITE HOSTING FOR PNG ORGANISATIONSWEBSITE HOSTING FOR PNG ORGANISATIONS
WEBSITE HOSTING FOR PNG ORGANISATIONS
 
Asif
AsifAsif
Asif
 
Wordcamp Thessaloniki 2011 The Nextweb
Wordcamp Thessaloniki 2011 The NextwebWordcamp Thessaloniki 2011 The Nextweb
Wordcamp Thessaloniki 2011 The Nextweb
 
Performance Implications of Mobile Design
Performance Implications of Mobile DesignPerformance Implications of Mobile Design
Performance Implications of Mobile Design
 

Viewers also liked

Controlling Physical Devices on the Real-Time Web: Enterprise-Grade WebSocket...
Controlling Physical Devices on the Real-Time Web: Enterprise-Grade WebSocket...Controlling Physical Devices on the Real-Time Web: Enterprise-Grade WebSocket...
Controlling Physical Devices on the Real-Time Web: Enterprise-Grade WebSocket...
Peter Moskovits
 
Block wallscanir sample_grouted_cell_report
Block wallscanir sample_grouted_cell_reportBlock wallscanir sample_grouted_cell_report
Block wallscanir sample_grouted_cell_report
propertyinspectir
 
Websockets in Node.js - Making them reliable and scalable
Websockets in Node.js - Making them reliable and scalableWebsockets in Node.js - Making them reliable and scalable
Websockets in Node.js - Making them reliable and scalable
Gareth Marland
 
network monitoring system ppt
network monitoring system pptnetwork monitoring system ppt
network monitoring system ppt
ashutosh rai
 

Viewers also liked (8)

Controlling Physical Devices on the Real-Time Web: Enterprise-Grade WebSocket...
Controlling Physical Devices on the Real-Time Web: Enterprise-Grade WebSocket...Controlling Physical Devices on the Real-Time Web: Enterprise-Grade WebSocket...
Controlling Physical Devices on the Real-Time Web: Enterprise-Grade WebSocket...
 
Block wallscanir sample_grouted_cell_report
Block wallscanir sample_grouted_cell_reportBlock wallscanir sample_grouted_cell_report
Block wallscanir sample_grouted_cell_report
 
Enterprise messaging with jms
Enterprise messaging with jmsEnterprise messaging with jms
Enterprise messaging with jms
 
JMS, WebSocket, and the Internet of Things - Controlling Physical Devices on ...
JMS, WebSocket, and the Internet of Things - Controlling Physical Devices on ...JMS, WebSocket, and the Internet of Things - Controlling Physical Devices on ...
JMS, WebSocket, and the Internet of Things - Controlling Physical Devices on ...
 
Websockets in Node.js - Making them reliable and scalable
Websockets in Node.js - Making them reliable and scalableWebsockets in Node.js - Making them reliable and scalable
Websockets in Node.js - Making them reliable and scalable
 
Real Time Network Monitoring System
Real  Time  Network  Monitoring  SystemReal  Time  Network  Monitoring  System
Real Time Network Monitoring System
 
Network monitoring system
Network monitoring systemNetwork monitoring system
Network monitoring system
 
network monitoring system ppt
network monitoring system pptnetwork monitoring system ppt
network monitoring system ppt
 

Similar to Building Living Web Applications with HTML5 WebSockets

Startup Harvard Part 3 (Derek)
Startup Harvard Part 3 (Derek)Startup Harvard Part 3 (Derek)
Startup Harvard Part 3 (Derek)
dhorton
 
Michael Adobe Flex Java 1 London
Michael Adobe Flex Java 1 LondonMichael Adobe Flex Java 1 London
Michael Adobe Flex Java 1 London
Skills Matter
 

Similar to Building Living Web Applications with HTML5 WebSockets (20)

HTML5 WebSocket Introduction
HTML5 WebSocket IntroductionHTML5 WebSocket Introduction
HTML5 WebSocket Introduction
 
HTML5 Websockets and Java - Arun Gupta
HTML5 Websockets and Java - Arun GuptaHTML5 Websockets and Java - Arun Gupta
HTML5 Websockets and Java - Arun Gupta
 
Building HTML5 WebSocket Apps in Java at JavaOne Latin America 2012
Building HTML5 WebSocket Apps in Java at JavaOne Latin America 2012Building HTML5 WebSocket Apps in Java at JavaOne Latin America 2012
Building HTML5 WebSocket Apps in Java at JavaOne Latin America 2012
 
Cloud Foundry Bootcamp
Cloud Foundry BootcampCloud Foundry Bootcamp
Cloud Foundry Bootcamp
 
Websocket 1.0
Websocket 1.0Websocket 1.0
Websocket 1.0
 
Startup Harvard Part 3 (Derek)
Startup Harvard Part 3 (Derek)Startup Harvard Part 3 (Derek)
Startup Harvard Part 3 (Derek)
 
The Web of Things - IoTExpo SF - May 2014
The Web of Things - IoTExpo SF - May 2014The Web of Things - IoTExpo SF - May 2014
The Web of Things - IoTExpo SF - May 2014
 
Jax2010 adobe lcds
Jax2010 adobe lcdsJax2010 adobe lcds
Jax2010 adobe lcds
 
Programming WebSockets with Glassfish and Grizzly
Programming WebSockets with Glassfish and GrizzlyProgramming WebSockets with Glassfish and Grizzly
Programming WebSockets with Glassfish and Grizzly
 
Michael Adobe Flex Java 1 London
Michael Adobe Flex Java 1 LondonMichael Adobe Flex Java 1 London
Michael Adobe Flex Java 1 London
 
HTML5 Real Time and WebSocket Code Lab (SFHTML5, GTUGSF)
HTML5 Real Time and WebSocket Code Lab (SFHTML5, GTUGSF)HTML5 Real Time and WebSocket Code Lab (SFHTML5, GTUGSF)
HTML5 Real Time and WebSocket Code Lab (SFHTML5, GTUGSF)
 
WebBee rapid web app development teck stack
WebBee rapid web app development teck stackWebBee rapid web app development teck stack
WebBee rapid web app development teck stack
 
Optimizing HTML5 Sites with CQ5/WEM
Optimizing HTML5 Sites with CQ5/WEMOptimizing HTML5 Sites with CQ5/WEM
Optimizing HTML5 Sites with CQ5/WEM
 
WebSocket Perspectives and Vision for the Future
WebSocket Perspectives and Vision for the FutureWebSocket Perspectives and Vision for the Future
WebSocket Perspectives and Vision for the Future
 
CloudFest Denver When Worlds Collide: HTML5 Meets the Cloud
CloudFest Denver When Worlds Collide: HTML5 Meets the CloudCloudFest Denver When Worlds Collide: HTML5 Meets the Cloud
CloudFest Denver When Worlds Collide: HTML5 Meets the Cloud
 
When worlds Collide: HTML5 Meets the Cloud
When worlds Collide: HTML5 Meets the CloudWhen worlds Collide: HTML5 Meets the Cloud
When worlds Collide: HTML5 Meets the Cloud
 
Getting Started Developing with Platform as a Service
Getting Started Developing with Platform as a ServiceGetting Started Developing with Platform as a Service
Getting Started Developing with Platform as a Service
 
Simplified Web2.0 application development with Project Zero
Simplified Web2.0 application development with Project ZeroSimplified Web2.0 application development with Project Zero
Simplified Web2.0 application development with Project Zero
 
WebSocket protocol
WebSocket protocolWebSocket protocol
WebSocket protocol
 
Building tomorrow's web with today's tools
Building tomorrow's web with today's toolsBuilding tomorrow's web with today's tools
Building tomorrow's web with today's tools
 

More from Peter Moskovits

Connecting Physical Devices to the Web - Event Driven Architecture using WebS...
Connecting Physical Devices to the Web - Event Driven Architecture using WebS...Connecting Physical Devices to the Web - Event Driven Architecture using WebS...
Connecting Physical Devices to the Web - Event Driven Architecture using WebS...
Peter Moskovits
 
Building Real-Time Enterprise Applications for the Internet of Things
Building Real-Time Enterprise Applications for the Internet of ThingsBuilding Real-Time Enterprise Applications for the Internet of Things
Building Real-Time Enterprise Applications for the Internet of Things
Peter Moskovits
 
Goo technologies pres sfhtml5_v1_130529
Goo technologies pres sfhtml5_v1_130529Goo technologies pres sfhtml5_v1_130529
Goo technologies pres sfhtml5_v1_130529
Peter Moskovits
 
Ore dev2011 kaazing_websockets
Ore dev2011 kaazing_websocketsOre dev2011 kaazing_websockets
Ore dev2011 kaazing_websockets
Peter Moskovits
 

More from Peter Moskovits (7)

Connecting Physical Devices to the Web - Event Driven Architecture using WebS...
Connecting Physical Devices to the Web - Event Driven Architecture using WebS...Connecting Physical Devices to the Web - Event Driven Architecture using WebS...
Connecting Physical Devices to the Web - Event Driven Architecture using WebS...
 
HTML5 WebSocket for the Real-Time Web and the Internet of Things
HTML5 WebSocket for the Real-Time Weband the Internet of ThingsHTML5 WebSocket for the Real-Time Weband the Internet of Things
HTML5 WebSocket for the Real-Time Web and the Internet of Things
 
Liberating the Black Box - Real-Time Communications for the Internet of Things
Liberating the Black Box - Real-Time Communications for the Internet of ThingsLiberating the Black Box - Real-Time Communications for the Internet of Things
Liberating the Black Box - Real-Time Communications for the Internet of Things
 
WebGL and Real-Time Web Communication
WebGL and Real-Time Web CommunicationWebGL and Real-Time Web Communication
WebGL and Real-Time Web Communication
 
Building Real-Time Enterprise Applications for the Internet of Things
Building Real-Time Enterprise Applications for the Internet of ThingsBuilding Real-Time Enterprise Applications for the Internet of Things
Building Real-Time Enterprise Applications for the Internet of Things
 
Goo technologies pres sfhtml5_v1_130529
Goo technologies pres sfhtml5_v1_130529Goo technologies pres sfhtml5_v1_130529
Goo technologies pres sfhtml5_v1_130529
 
Ore dev2011 kaazing_websockets
Ore dev2011 kaazing_websocketsOre dev2011 kaazing_websockets
Ore dev2011 kaazing_websockets
 

Recently uploaded

Recently uploaded (20)

How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
A Beginners Guide to Building a RAG App Using Open Source Milvus
A Beginners Guide to Building a RAG App Using Open Source MilvusA Beginners Guide to Building a RAG App Using Open Source Milvus
A Beginners Guide to Building a RAG App Using Open Source Milvus
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
 
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot ModelNavi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 

Building Living Web Applications with HTML5 WebSockets

  • 1. Building  Living  Web   ApplicaEons  with     HTML5  WebSockets   Creators  of  HTML5  WebSocket   WebSocket  Gateway   High  Performance   Enterprise  Support   Peter  Moskovits  -­‐  @pmoskovi   Developer  Evangelist   1   Copyright  ©  2012  Kaazing  Corpora3on.  All  Rights  Reserved.  
  • 2. Agenda   •  Is  There  a  Problem?   •  How  Serious  is  the  Problem?   •  Any  Hope?   •  Demos     OFFER  BETTER  EXPERIENCE  EVERYWHERE   2   Copyright  ©  2012  Kaazing  Corpora3on.  All  Rights  Reserved.  
  • 3. Architectural  (R)evoluEon   Client-­‐Server   Full  duplex   Client   Back-­‐end  server   3   Copyright  ©  2012  Kaazing  Corpora3on.  All  Rights  Reserved.  
  • 4. Architectural  (R)evoluEon   Legacy  Web   Half  Duplex   Web   Browser   Web   Server   4   Copyright  ©  2012  Kaazing  Corpora3on.  All  Rights  Reserved.  
  • 5. Architectural  (R)evoluEon   Legacy  Web   Half  Duplex   Full  duplex   Web   Browser   Web   Middleware   Back-­‐end     Tier   server   5   Copyright  ©  2012  Kaazing  Corpora3on.  All  Rights  Reserved.  
  • 6. HTTP:  Polling  &  Long  Polling   I  want  Desktop-­‐ like  InteracEons   6   Copyright  ©  2012  Kaazing  Corpora3on.  All  Rights  Reserved.  
  • 7. A  Parallel  Universe  Without  Mailman   7   Copyright  ©  2012  Kaazing  Corpora3on.  All  Rights  Reserved.  
  • 8. HTTP:  Polling  &  Long  Polling   HTTP   •  Was  designed  to  serve  sta3c  documents   •  Half  duplex,  high  latency   •  Overhead:  800-­‐2000  bytes   •  Complex  architecture:  plugins,  polling,  legacy  applica3on  servers   •  Expensive  to  "Webscale"  applica3ons   8   Copyright  ©  2012  Kaazing  Corpora3on.  All  Rights  Reserved.  
  • 9. HTTP  Overhead   788  bytes  +  1  byte   9   Copyright  ©  2012  Kaazing  Corpora3on.  All  Rights  Reserved.  
  • 10. Workarounds  and  Hacks   AJAX:  Asynchronous  JavaScript  and  XML   Lack  of  standard  implementa3on   Used  for  building  highly  interac3ve  Web  apps   Comet  adds  lots  of  complexity   Content  can  change  without  full  page  refresh   User-­‐perceived  low  latency   "Real-­‐3me"  o`en  achieved  using  polling  and   long-­‐polling   10   Copyright  ©  2012  Kaazing  Corpora3on.  All  Rights  Reserved.  
  • 11. Workarounds  and  Hacks   11   Copyright  ©  2012  Kaazing  Corpora3on.  All  Rights  Reserved.  
  • 12. HTML5  WebSocket   §  Extends  TCP  across  the  Web   •  Full-­‐duplex,  single  socket,  very   low  overhead   •  Shares  port  with    HTTP  (80/443)   •  Enables  new  classes  of   networked  apps   §  W3C  API  (JavaScript)   §  IETF  Protocol   12   Copyright  ©  2012  Kaazing  Corpora3on.  All  Rights  Reserved.  
  • 13. Architectural  (R)evoluEon   Legacy  Web   Half  Duplex   Full  duplex   Web   Browser   Web   Middleware   Back-­‐end     Tier   server   13   Copyright  ©  2012  Kaazing  Corpora3on.  All  Rights  Reserved.  
  • 14. Architectural  (R)evoluEon   Living  Web   WebSocket   Full  duplex   Web   WebSocket  Server   Back-­‐end     server   14   Copyright  ©  2012  Kaazing  Corpora3on.  All  Rights  Reserved.  
  • 15. Legacy  Web   Half  Duplex   Full  duplex   Web   Browser   Web   Middleware   Back-­‐end     Tier   server   Living  Web   WebSocket   Full  duplex   Web   WebSocket  Server   Back-­‐end     server   16   Copyright  ©  2012  Kaazing  Corpora3on.  All  Rights  Reserved.  
  • 16. Browser  Support   17   Copyright  ©  2012  Kaazing  Corpora3on.  All  Rights  Reserved.  
  • 17. Can  I  Use?   caniuse.com   18   Copyright  ©  2012  Kaazing  Corpora3on.  All  Rights  Reserved.  
  • 18. Can  I  Use?   19   Copyright  ©  2012  Kaazing  Corpora3on.  All  Rights  Reserved.  
  • 19. Can  I  Use?   websocketstest.com   20   Copyright  ©  2012  Kaazing  Corpora3on.  All  Rights  Reserved.  
  • 20. How  Can  I  Use?   21   Copyright  ©  2012  Kaazing  Corpora3on.  All  Rights  Reserved.  
  • 21. How  Can  I  Use?   22   Copyright  ©  2012  Kaazing  Corpora3on.  All  Rights  Reserved.  
  • 22. The  WebSocket  Handshake   23   Copyright  ©  2012  Kaazing  Corpora3on.  All  Rights  Reserved.  
  • 23. WebSocket  Frames   §  Only  a  few  header  bytes   §  Data  may  be  text  or  binary   §  Frames  from  client  to  server  are  masked  (XORed  w/   random  value)  to  avoid  confusing  proxies   24   Copyright  ©  2012  Kaazing  Corpora3on.  All  Rights  Reserved.  
  • 24. InspecEng  WebSocket  Frames   Available  today  in  Chromium  and  Chrome  Canary   25   Copyright  ©  2012  Kaazing  Corpora3on.  All  Rights  Reserved.  
  • 25. Demo!   Inspec,ng  WebSocket   Frames   26   Copyright  ©  2012  Kaazing  Corpora3on.  All  Rights  Reserved.  
  • 26. 27   Copyright  ©  2012  Kaazing  Corpora3on.  All  Rights  Reserved.  
  • 27. 28   Copyright  ©  2012  Kaazing  Corpora3on.  All  Rights  Reserved.  
  • 28. Got  WebSockets  –  Now  What?   29   Copyright  ©  2012  Kaazing  Corpora3on.  All  Rights  Reserved.  
  • 29. A  New  World   30   Copyright  ©  2012  Kaazing  Corpora3on.  All  Rights  Reserved.  
  • 30. Build  Highly  Scalable  Web  Messaging  Apps     31   Copyright  ©  2012  Kaazing  Corpora3on.  All  Rights  Reserved.  
  • 31. Extend  the  Reach  of     Your  Rich  Business  Protocols  to  the  Web   Living  Web   JMS,  AMQP,  XMPP/WebSocket   JMS,  AMQP,  XMPP/TCP   Web   Kaazing   Back-­‐end     WebSocket  Gateway   server   32   Copyright  ©  2012  Kaazing  Corpora3on.  All  Rights  Reserved.  
  • 32. Demos!   33   Copyright  ©  2012  Kaazing  Corpora3on.  All  Rights  Reserved.  
  • 33. Presso:  WebSocket  Powered  Social  HTML5  PresentaEon  Tool   34   Copyright  ©  2012  Kaazing  Corpora3on.  All  Rights  Reserved.  
  • 34. Demos!   35   Copyright  ©  2012  Kaazing  Corpora3on.  All  Rights  Reserved.  
  • 35. AddiEonal  Resources   kaazing.com/download   The  Zinger:    blog.kaazing.com   Pro  HTML5  Programming  Guide     More  Demos  &  Content     •  kaazing.com/demo   •  websocket.org   •  kaazing.com/about/collateral     Kaazing  University   •  HTML5  Fast  Track     •  HTML5  Mobile  Mastery   •  Kaazing  Master  Class       Rich  Real-­‐Time  User  Experience   36   Copyright  ©  2012  Kaazing  Corpora3on.  All  Rights  Reserved.  
  • 36. 37   Copyright  ©  2012  Kaazing  Corpora3on.  All  Rights  Reserved.