SlideShare uma empresa Scribd logo
1 de 19
Baixar para ler offline
Real time web applications




         Confidential – For Internal Circulation Only


©2011, Cognizant
Agenda

                   What is real time web?
                    Requirements & Capabilities

                    Choosing the right communication technology
                    How to develop a real time application

                    RTW Technology framework

                    Web notification API

                    Comet, HTML5 , Web Notification API & XMPP

                     Trends

1   | ©2011, Cognizant
What is real time web (RTW)? Beyond Twitter & Facebook
     “It happens with out waiting !!!”

     Kaazing (infrastructure provider) , RTW is using HTML5 Web Sockets technology
      to push live financial information to the Web browsers of banking customers.

     Evri (semantic recommendation company ) RTW is the ebbing and flowing of
      traffic data on Wikipedia. That data points to hot topics that Evri needs to build
      topic pages to serve their publisher customers.

     OneRiot (search engine ), RTW is made up of the links people share on Twitter ,
      Digg, Delicious and the click-streams of folks using OneRiot toolbar.

     NYU Journalism Professor Jay Rosen says the real-time Web creates a sense of
      flow for users that’s comparable to the way television holds our attention.
     Google’s Brett Slatkin, says the real-time Web is a foundation for efficient
      computing and use cases we can’t yet even imagine.

2   | ©2011, Cognizant
What is real time web (RTW)? Beyond Twitter & Facebook
The real-time web is the Web in which data is delivered to its recipients (be they
human or machine) in real or near real time, as soon as it becomes available.
Scope of the real-time Web, ranges from finance and medical tools, to social
networking and media services.
                                       OR

Content is pushed from a publisher to a subscriber, rather than have the
subscriber poll the publisher over and over.

•More than 50% of the links shortened by Bit.ly are now created outside of
Twitter.

•Real-time search engine Collecta, too, doesn't just index posts from Twitter, but
also collects millions of post from platforms like MySpace and WordPress every
day.

•Besides these social tools, it's worth noting that a lot of real-time information is
now being passed between machines and Internet-connected sensors.

3   | ©2011, Cognizant
Real-time application requirements & capabilities

•Interactivity to present real time data to clients

•Ability to maintain persistent connection to the server

•Faster data transmission protocol ( example AMF – Action Message Format over
JSON or XML)

•Ability to embed logic on the client to reduce server load

•Ability to push data from multiple sources , including changes from other users




4   | ©2011, Cognizant
Choosing the right communication methodology

•Consider

      •Performance
      •Authentication
      •Concurrent connection
      •Network topology
      •Data management requirements

•Options

      •Piggybacking & polling
      •Long polling
      •Streaming
      •RTMP over NIO




5   | ©2011, Cognizant
Choosing the right communication methodology
Options                   Applicable                Pros / Cons
Piggy backing             Use Case: Sports          Piggybacking requires no polling. Piggyback has high
& polling                 scoreboard                latency. Polling and Piggy backing can be combined.
                          SLAS: 5 to 10 seconds
                          Recommendation:
                          Polling
Long polling              Use Case: Call monitoring Ties up browser connections to server.
                          systems for call centre , Latency issues on server during load.
                          queued calls , avg. wait
                          times, call completion %.

Streaming                 Use Case: Stock           Works well in intranet based scenarios , in public n/w due
                          brokerage                 to proxy , buffering n/w latency is introduced.
                                                    Ties up multiple connection to the server intermittently.


RTMP with                 Use Case: Stock           Fully duplex , TCP based protocol , apt for mission critical
NIO                       brokerage                 applications running on a private network.

                                                    NIO requires less threads to manage connections (J2SE
                                                    1.4)


 6   | ©2011, Cognizant
How to develop a Real time application ?

•In the past we leveraged client – server architectures / 1st generation web

•In came AJAX

•Challenge with AJAX

      • Handling large data sets
      • Supporting multiple browsers and versions

•Challenge with real time
    •Latency
        •Public network
        •Enterprise network
        •Resource constraints
             •Web server(s)
             •Application server(s)
             •Database server(s)
             •Client (s)
7   | ©2011, Cognizant
A sample Real time application

•Let us a develop a real time stock trading application.

•Major components are
    •Multiple external data feeds
    •Distribution to clients according to subscription policies
    •Trader dashboard - live graphs, charts, portfolio information, video feeds,
    and so on.
    •Trader can access client’s information, including a current portfolio, desired
    risk levels, past trades, and available credit.
•Technology stack
    • Client - Flex / Flash / Adobe AIR ( runtime enables developers to use HTML,
      JavaScript, Adobe Flash® and Flex technologies, and ActionScript® )
     •Server - Adobe Live Cycle Data Services
•Flex
     •Capable of opening a TCP binary socket with the back end
     •Can interact very well with Ajax applications (basically JavaScript) running in
     the same browser window

8   | ©2011, Cognizant
Public              DMZ                      Application                              Live data feeds
                                                                     A
Network                                          Tier
                                                                     u
                                                                     t
                                                                     h
                                                                     e
            F                         F                              n
            I                         I                              t
            R                         R                              i
            E                         E                              c
            W                         W                              a
                                                                     t
            A                         A
                                                                     i
            L                         L                              o
            L                         L                              n

                                                Stock trader


                                                                                                             Image
                                                  HTTP(S*)
                                                                                                             Area
                                                                          New IO (NIO)- enabled             Enterprise data
External
                     Web                                                  Live Cycle Data Services              center
  user
                    Servers                                                        cluster




      1. Secure access                         2. Dynamic user interface                          3. Bidirectional data
                                                                                                      synchronization
    Users are authenticated                       Flash applications written
   in real-time for access to                      in Flex display live data                       Livecycle Data Services
         live data feeds                            pushed from Livecycle                            retrieves data from
                                                   data Services to clients                           multiple back-end
    *HTTP(S) provides a range                       inside and outside the                       systems and synchronizes
    of implementation choices.                             firewall.                              updates to maintain data
                                                                                                           integrity.

    ©2011, Cognizant
    A real time application deployment using HTTP or RTMP for client connections behind the IT demilitarized zone (DMZ), and HTTP for
                                                 communications across public networks
Real time web technology frameworks

•Beaconpush - Beaconpush changes the traditional request-response flow of the
web by creating a persistent real-time message stream to each of your visitors.
Enabling you to reach your visitors without requiring them to constantly poll your
website.

•WebRTC - WebRTC is a free, open project that enables web browsers with Real-
Time Communications (RTC) capabilities via simple JavaScript APIs. The WebRTC
components have been optimized to best serve this purpose. The WebRTC
initiative is a project supported by Google, Mozilla and Opera.

•APE - APE (Ajax Push Engine) is an Open Source technology allowing you to do real
time data streaming through a web browser with no applets and no plugins.

•Comet - Comet is a web application model in which a long-held HTTP request
allows a web server to push data to a browser, without the browser explicitly
requesting it. Comet is an umbrella term, encompassing multiple techniques for
achieving this interaction.

10   | ©2011, Cognizant
Real time web technology frameworks

•HTML5 Web Sockets - HTML5 Web Sockets defines a full-duplex communication
channel that operates through a single socket over the Web.

•Apache Wave - Apache Wave is a software framework centered on online real-
time collaborative editing, originally developed by Google as Google Wave. Google
Wave is a web-based computing platform and communications protocol, designed
to merge key features of media like e-mail, instant messaging, wikis, and social
networking.

•beweevee – Live Collaboration in your application, using .NET live collaboration
framework.




11   | ©2011, Cognizant
What is Comet?

•Web application model in which web server pushes data to a browser (without
any request initiated from browser)

•All techniques rely on Java script rather than on non-default plug-in

•AKA Ajax Push, Reverse Ajax, Two-way-web, HTTP Streaming and HTTP server
push

• Leverages a persistent or long-lasting HTTP connection between the server and
the client.

•Implementation category - streaming & long polling




12   | ©2011, Cognizant
You should care about HTML5

Websocket This specification defines an API that enables Web pages to use the
WebSocket protocol for two-way communication with a remote host. Use cases
include

       •Multiplayer online games
       •Chat applications
       •Live sports ticker
       •Real-time updating social streams

Server sent events SSEs open a single unidirectional channel between server and
client. Useful for one way notification from server. Use cases include

       •Friends' status updates
       •Stock tickers
       •News feeds
       •Other automated data push mechanisms


13   | ©2011, Cognizant
Web notification API
      Next frontier for real-time web is to move from real-time updates to real-time
       notifications

      Think twitter - What is the challenge?

      W3C – Public draft of “Web Notifications API”
       (http://www.w3.org/TR/2011/WD-notifications-20110301/)

      What does the API do?
         This specification provides an API to generate simple notifications to alert
               users outside of the web page
                                                •Distributed social networks
      Early adopters                           •Chat apps
                                                •News alert apps
          Gmail ( supported in Chrome)         •Banking apps



14   | ©2011, Cognizant
XMPP
The Extensible Messaging and Presence Protocol (XMPP) is an open technology for real-time
communication. In essence, XMPP provides a way to send small pieces of XML from one
entity to another in close to real time.
              Service                                          Description
Channel encryption
Authentication
Presence                      enables you to find out about the network availability of other entities
Contact lists                 enables you to store a contact list, or roster, on an XMPP server.
One-to-one messaging          enables you to send messages to another entity
Multi-party messaging         enables you to join a virtual chat room for the exchange of messages
                              between multiple participants
Notifications                 enables you to generate a notification and have it delivered to multiple
                              subscribers
Service discovery             enables you to find out which features are supported by another entity
Capabilities advertisement     shorthand notation for service discovery data so that you can easily cache
                              the features that are supported by other entities on the network
Structured data forms         enables you to exchange structured but flexible forms with other entities
Workflow management
15   | ©2011, Cognizant

Peer-to-peer media sessions   enables you to negotiate and manage a media session with another entity
XMPP – What kind of applications I can build ?

                                           Applications

                                        Instant messaging
                                           Group chat
                                            Gaming
                                        Systems Control
                                          Geo Location
                                        Data syndication


                                              VOIP


                                        Identity Services


16   | ©2011, Cognizant
Real-time web trends

      Real-time collaboration is ripening

      Real-time analytics will be hot

      Real-time search

      Real-time ecommerce




17   | ©2011, Cognizant
Thanks !!!


    Reference

          Vendor sites
          Blogs / Forums
          W3C



©2011, Cognizant

Mais conteúdo relacionado

Último

Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024The Digital Insurer
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilV3cube
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
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...DianaGray10
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfhans926745
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century educationjfdjdjcjdnsjd
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdflior mazor
 
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, Adobeapidays
 
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 WorkerThousandEyes
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
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 WorkerThousandEyes
 
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?Igalia
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 

Último (20)

Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of Brazil
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
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...
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdf
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
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
 
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
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
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 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?
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 

Destaque

2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by Hubspot2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by HubspotMarius Sescu
 
Everything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPTEverything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPTExpeed Software
 
Product Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsProduct Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsPixeldarts
 
How Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthHow Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthThinkNow
 
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfAI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfmarketingartwork
 
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024Neil Kimberley
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)contently
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024Albert Qian
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsKurio // The Social Media Age(ncy)
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Search Engine Journal
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summarySpeakerHub
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next Tessa Mero
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentLily Ray
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best PracticesVit Horky
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project managementMindGenius
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...RachelPearson36
 

Destaque (20)

2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by Hubspot2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by Hubspot
 
Everything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPTEverything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPT
 
Product Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsProduct Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage Engineerings
 
How Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthHow Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental Health
 
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfAI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
 
Skeleton Culture Code
Skeleton Culture CodeSkeleton Culture Code
Skeleton Culture Code
 
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search Intent
 
How to have difficult conversations
How to have difficult conversations How to have difficult conversations
How to have difficult conversations
 
Introduction to Data Science
Introduction to Data ScienceIntroduction to Data Science
Introduction to Data Science
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best Practices
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project management
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
 

Programming the Real-Time Web

  • 1. Real time web applications Confidential – For Internal Circulation Only ©2011, Cognizant
  • 2. Agenda What is real time web? Requirements & Capabilities Choosing the right communication technology How to develop a real time application RTW Technology framework Web notification API Comet, HTML5 , Web Notification API & XMPP Trends 1 | ©2011, Cognizant
  • 3. What is real time web (RTW)? Beyond Twitter & Facebook  “It happens with out waiting !!!”  Kaazing (infrastructure provider) , RTW is using HTML5 Web Sockets technology to push live financial information to the Web browsers of banking customers.  Evri (semantic recommendation company ) RTW is the ebbing and flowing of traffic data on Wikipedia. That data points to hot topics that Evri needs to build topic pages to serve their publisher customers.  OneRiot (search engine ), RTW is made up of the links people share on Twitter , Digg, Delicious and the click-streams of folks using OneRiot toolbar.  NYU Journalism Professor Jay Rosen says the real-time Web creates a sense of flow for users that’s comparable to the way television holds our attention.  Google’s Brett Slatkin, says the real-time Web is a foundation for efficient computing and use cases we can’t yet even imagine. 2 | ©2011, Cognizant
  • 4. What is real time web (RTW)? Beyond Twitter & Facebook The real-time web is the Web in which data is delivered to its recipients (be they human or machine) in real or near real time, as soon as it becomes available. Scope of the real-time Web, ranges from finance and medical tools, to social networking and media services. OR Content is pushed from a publisher to a subscriber, rather than have the subscriber poll the publisher over and over. •More than 50% of the links shortened by Bit.ly are now created outside of Twitter. •Real-time search engine Collecta, too, doesn't just index posts from Twitter, but also collects millions of post from platforms like MySpace and WordPress every day. •Besides these social tools, it's worth noting that a lot of real-time information is now being passed between machines and Internet-connected sensors. 3 | ©2011, Cognizant
  • 5. Real-time application requirements & capabilities •Interactivity to present real time data to clients •Ability to maintain persistent connection to the server •Faster data transmission protocol ( example AMF – Action Message Format over JSON or XML) •Ability to embed logic on the client to reduce server load •Ability to push data from multiple sources , including changes from other users 4 | ©2011, Cognizant
  • 6. Choosing the right communication methodology •Consider •Performance •Authentication •Concurrent connection •Network topology •Data management requirements •Options •Piggybacking & polling •Long polling •Streaming •RTMP over NIO 5 | ©2011, Cognizant
  • 7. Choosing the right communication methodology Options Applicable Pros / Cons Piggy backing Use Case: Sports Piggybacking requires no polling. Piggyback has high & polling scoreboard latency. Polling and Piggy backing can be combined. SLAS: 5 to 10 seconds Recommendation: Polling Long polling Use Case: Call monitoring Ties up browser connections to server. systems for call centre , Latency issues on server during load. queued calls , avg. wait times, call completion %. Streaming Use Case: Stock Works well in intranet based scenarios , in public n/w due brokerage to proxy , buffering n/w latency is introduced. Ties up multiple connection to the server intermittently. RTMP with Use Case: Stock Fully duplex , TCP based protocol , apt for mission critical NIO brokerage applications running on a private network. NIO requires less threads to manage connections (J2SE 1.4) 6 | ©2011, Cognizant
  • 8. How to develop a Real time application ? •In the past we leveraged client – server architectures / 1st generation web •In came AJAX •Challenge with AJAX • Handling large data sets • Supporting multiple browsers and versions •Challenge with real time •Latency •Public network •Enterprise network •Resource constraints •Web server(s) •Application server(s) •Database server(s) •Client (s) 7 | ©2011, Cognizant
  • 9. A sample Real time application •Let us a develop a real time stock trading application. •Major components are •Multiple external data feeds •Distribution to clients according to subscription policies •Trader dashboard - live graphs, charts, portfolio information, video feeds, and so on. •Trader can access client’s information, including a current portfolio, desired risk levels, past trades, and available credit. •Technology stack • Client - Flex / Flash / Adobe AIR ( runtime enables developers to use HTML, JavaScript, Adobe Flash® and Flex technologies, and ActionScript® ) •Server - Adobe Live Cycle Data Services •Flex •Capable of opening a TCP binary socket with the back end •Can interact very well with Ajax applications (basically JavaScript) running in the same browser window 8 | ©2011, Cognizant
  • 10. Public DMZ Application Live data feeds A Network Tier u t h e F F n I I t R R i E E c W W a t A A i L L o L L n Stock trader Image HTTP(S*) Area New IO (NIO)- enabled Enterprise data External Web Live Cycle Data Services center user Servers cluster 1. Secure access 2. Dynamic user interface 3. Bidirectional data synchronization Users are authenticated Flash applications written in real-time for access to in Flex display live data Livecycle Data Services live data feeds pushed from Livecycle retrieves data from data Services to clients multiple back-end *HTTP(S) provides a range inside and outside the systems and synchronizes of implementation choices. firewall. updates to maintain data integrity. ©2011, Cognizant A real time application deployment using HTTP or RTMP for client connections behind the IT demilitarized zone (DMZ), and HTTP for communications across public networks
  • 11. Real time web technology frameworks •Beaconpush - Beaconpush changes the traditional request-response flow of the web by creating a persistent real-time message stream to each of your visitors. Enabling you to reach your visitors without requiring them to constantly poll your website. •WebRTC - WebRTC is a free, open project that enables web browsers with Real- Time Communications (RTC) capabilities via simple JavaScript APIs. The WebRTC components have been optimized to best serve this purpose. The WebRTC initiative is a project supported by Google, Mozilla and Opera. •APE - APE (Ajax Push Engine) is an Open Source technology allowing you to do real time data streaming through a web browser with no applets and no plugins. •Comet - Comet is a web application model in which a long-held HTTP request allows a web server to push data to a browser, without the browser explicitly requesting it. Comet is an umbrella term, encompassing multiple techniques for achieving this interaction. 10 | ©2011, Cognizant
  • 12. Real time web technology frameworks •HTML5 Web Sockets - HTML5 Web Sockets defines a full-duplex communication channel that operates through a single socket over the Web. •Apache Wave - Apache Wave is a software framework centered on online real- time collaborative editing, originally developed by Google as Google Wave. Google Wave is a web-based computing platform and communications protocol, designed to merge key features of media like e-mail, instant messaging, wikis, and social networking. •beweevee – Live Collaboration in your application, using .NET live collaboration framework. 11 | ©2011, Cognizant
  • 13. What is Comet? •Web application model in which web server pushes data to a browser (without any request initiated from browser) •All techniques rely on Java script rather than on non-default plug-in •AKA Ajax Push, Reverse Ajax, Two-way-web, HTTP Streaming and HTTP server push • Leverages a persistent or long-lasting HTTP connection between the server and the client. •Implementation category - streaming & long polling 12 | ©2011, Cognizant
  • 14. You should care about HTML5 Websocket This specification defines an API that enables Web pages to use the WebSocket protocol for two-way communication with a remote host. Use cases include •Multiplayer online games •Chat applications •Live sports ticker •Real-time updating social streams Server sent events SSEs open a single unidirectional channel between server and client. Useful for one way notification from server. Use cases include •Friends' status updates •Stock tickers •News feeds •Other automated data push mechanisms 13 | ©2011, Cognizant
  • 15. Web notification API  Next frontier for real-time web is to move from real-time updates to real-time notifications  Think twitter - What is the challenge?  W3C – Public draft of “Web Notifications API” (http://www.w3.org/TR/2011/WD-notifications-20110301/)  What does the API do?  This specification provides an API to generate simple notifications to alert users outside of the web page •Distributed social networks  Early adopters •Chat apps •News alert apps  Gmail ( supported in Chrome) •Banking apps 14 | ©2011, Cognizant
  • 16. XMPP The Extensible Messaging and Presence Protocol (XMPP) is an open technology for real-time communication. In essence, XMPP provides a way to send small pieces of XML from one entity to another in close to real time. Service Description Channel encryption Authentication Presence enables you to find out about the network availability of other entities Contact lists enables you to store a contact list, or roster, on an XMPP server. One-to-one messaging enables you to send messages to another entity Multi-party messaging enables you to join a virtual chat room for the exchange of messages between multiple participants Notifications enables you to generate a notification and have it delivered to multiple subscribers Service discovery enables you to find out which features are supported by another entity Capabilities advertisement shorthand notation for service discovery data so that you can easily cache the features that are supported by other entities on the network Structured data forms enables you to exchange structured but flexible forms with other entities Workflow management 15 | ©2011, Cognizant Peer-to-peer media sessions enables you to negotiate and manage a media session with another entity
  • 17. XMPP – What kind of applications I can build ? Applications Instant messaging Group chat Gaming Systems Control Geo Location Data syndication VOIP Identity Services 16 | ©2011, Cognizant
  • 18. Real-time web trends Real-time collaboration is ripening Real-time analytics will be hot Real-time search Real-time ecommerce 17 | ©2011, Cognizant
  • 19. Thanks !!! Reference Vendor sites Blogs / Forums W3C ©2011, Cognizant