Performance Challenges for the Open Web Stanford CS193H 29 September 2008.

Slides:



Advertisements
Similar presentations
Yahoo! OpenID and OAuth 1 Allen Tom Yahoo! Membership Architect OpenID Foundation Board
Advertisements

On-line media tools for strategic communications purposes When using media tools for communication we try to use the latest technologies such us blogging,
CS193H: High Performance Web Sites Lecture 4: Class Projects Steve Souders Google
CS193H: High Performance Web Sites Lecture 17: Rule 14 – Make Ajax Cacheable Steve Souders Google
CS193H: High Performance Web Sites Lecture 3: HTTP and the Web 100 Performance Profile Steve Souders Google
CS193H: High Performance Web Sites Lecture 12: Rule 8 – Make JavaScript and CSS External Steve Souders Google
Widget Summit: Advanced JavaScript Joseph Smarr Plaxo, Inc. October 16, 2007.
High-Performance JavaScript: Why Everything Youve Been Taught is Wrong Joseph Smarr Plaxo, Inc.
OAuth Phil Wilson, University of Bath, what the? "OAuth provides a way to grant access to your data on some website to a third website, without.
Bob German Principal Architect Introduction to Cloud Hosted Apps Your apps here!
Enabling Secure Internet Access with ISA Server
Yammer Technical Solutions Overview
Whats new with social media Dean Chew SEO Consultant Ayima Search Marketing.
Notification Explosion Calendaring –You have a new meeting request –Your meeting begins in 15 minutes SIP –Hello HTTP/WebDAV –A resource you want to edit.
Staying in Sync with Cloud 2 Device Messaging. About Me Chris Risner Twitter: chrisrisner.
OAuth 2.0 By “PJ” (JP on meetup.com) iOS and PHP developer, and occasional lawyer Contact me via:
1Proprietary and Confidential AirVantage API – Getting started David SCIAMMA – June 13th 2014.
Using Evernote and Google Docs in your web or mobile application (and potentially Dropbox and Skydrive) By Peter Messenger Senior Developer – Triple Point.
Joseph Smarr Implementing Open Social Web support on your site Joseph Smarr Chief Platform Architect, Plaxo Future of Web Apps Workshop, Miami, 2/28/2008.
The Widgets Shall Inherit the Web Widget Summit 4 November 2008.
Joseph Smarr Opening up the Social Web Joseph Smarr Chief Platform Architect, Plaxo 11/28/2007.
Lots of sites care about “who you know”… Lots of talk about “opening up the social web”…
Mashing Up with User-Centric Identity America Online LLC John Panzer, Praveen Alavilli.
In a world with lots of socially-aware sites… …and lots of “open social web” building blocks…
Teri M. Vogel Lauc-B 2007 Conference November 2, 2007
SOCIAL NETWORK INFORMATION CONSOLIDATION Developers:  Klasquin Tomer  Nisimov Yaron  Rabih Erez Advisors:  Academic: Prof. Elovici Yuval  Technical:
Finalize RESTful Application Programming Interface (API) Security Recommendations Transport & Security Standards Workgroup January 28, 2014.
Application Layer  We will learn about protocols by examining popular application-level protocols  HTTP  FTP  SMTP / POP3 / IMAP  Focus on client-server.
 Proxy Servers are software that act as intermediaries between client and servers on the Internet.  They help users on private networks get information.
Discovery Login credentials Identity Given/family name User name(s) Assigned number(s) (e.g., governmental).... Addressing snail mail address address.
Application Standards for ‘Push’ Content and Streaming Media Hadi Partovi Microsoft Corporation.
The Future Of Social Networks Charlene Li Vice President & Principal Analyst Co-author of Groundswell Forrester Research March 4, 2008.
Health IT RESTful Application Programming Interface (API) Security Considerations Transport & Security Standards Workgroup March 18, 2015.
TechEd /20/2017 2:02 AM © 2013 Microsoft Corporation. All rights reserved. Microsoft, Windows, and other product names are or may be registered trademarks.
Open Stack For Open Web Payments Praveen Alavilli Ray Tanaka.
Edmodo Workshop. Edmodo’s mission is to connect all learners with the people and resources they need to reach their full potential.
Discovery Login credentials Identity Given/family name User name(s) Assigned number(s) (e.g., governmental).... Addressing snail mail address address.
Social networking task force Jeff Jaffe Ann Bassetti Steve Holbrook 14 May
M i SMob i S Mob i Store - Mobile i nternet File Storage Platform Chetna Kaur.
Project “Astoria” first announced in Mix 2007 Shared early prototypes, got tons of feedback Now we’re talking about the real deal Production quality bits,
OpenDSN Revisited: The Open, Distributed Social Networking Protocol By Zach Broderick and Tim Hickey.
Cross Site Integration “mashups” cross site scripting.
Orbited Scaling Bi-directional web applications A presentation by Michael Carter
Sponsors Gold Silver Bronze Custom REST services and jQuery AJAX Building your own custom REST services and consuming them with jQuery AJAX.
The Social Web: An Implementer's Guide Google I/O May 2009 Google Moderator:
SIP-ify the Base Jon R. Doyle VP Business Development CommuniGate Systems.
Distributed Information Systems. Motivation ● To understand the problems that Web services try to solve it is helpful to understand how distributed information.
Lecture 16 Page 1 CS 236 Online Web Security CS 236 On-Line MS Program Networks and Systems Security Peter Reiher.
FriendFinder Location-aware social networking on mobile phones.
Joseph Smarr A Practical Vision for Friends-List Portability Joseph Smarr IIW 2007b, 12/5/2007.
Securing Angular Apps Brian Noyes
Users are moving towards web applications Content on the web is more personal & meaningful Development on the web is easier than the OS.
FriendFinder Location-aware social networking on mobile phones.
In a world with lots of socially-aware sites… …and lots of “open social web” building blocks…
From Harry Halpin, Evan Prodromou, 4/2/2012. Harry Halpin, Evan Prodromou original, with David Robinson additions highlighted in red by Ann*... 4/16/2012.
Introduction & use-cases FedAuth IETF78 Maastricht, July 27, 2010
Secure Mobile Development with NetIQ Access Manager
An Introduction.  Introduction  Logging in from D1  Raison d'être  RSS and Podcasting  DragonDrop is…  What does it do?  Upload  Available Output.
THE FUTURE IS HERE: APPLICATION- AWARE CACHING BY ASHOK ANAND.
Federation made simple
Data and Applications Security Developments and Directions
Windows Live Martin Parry Developer and Platform Group Microsoft
Emergency Communications
ECE 671 – Lecture 16 Content Distribution Networks
from Harry Halpin, Evan Prodromou, 4/2/2012
A few recent days in the news…
The Social Web: An Implementer's Guide
ADUG 21-Oct 2013 Grahame Grieve
Western Mass Microsoft Technology Users Group
Report from the trenches of an HTML5 game provider
Presentation transcript:

Performance Challenges for the Open Web Stanford CS193H 29 September 2008

Background: making the web work better Ive been abusing web browsers for 15 years I used to work on AJAX / JS performance Video: Now Im helping open up the social web Weekly video podcast: thesocialweb.tv Open Web has new performance challenges Making multiple sites play well together Privacy, transparency, flexibility, simplicity

In a world with lots of socially-aware sites…

…and lots of open social web building blocks…

…how do the pieces fit together? …and what will the new Social Web look like?

Reminder: The social web today is broken… On each site, we still have to: Re-create an account Re-enter our profile info Re-find our friends Re-establish our relationships New social apps have limited options: Create yet-another-silo (and start from scratch) -or- Make a widget inside an existing walled garden

…but we know how to make things better!

Create a portable, durable online identity OpenID Sign up / sign in with an existing account Link / share your profile data between sites

Example: Sign up for Plaxo with OpenID

Create a portable, durable online identity OpenID Sign up / sign in with an existing account Link / share your profile data between sites rel=me (XFN) Consolidate your online identity with me-links Social Graph API See what your users said about themselves

Build and maintain real relationships Contact APIs Find people from your current address book Leverage previously established relationships OAuth Share private data between trusted sites Friends-list portability Continuous discovery across multiple sites

A periodic check of new people from your networks on other sites

Stay up-to-date with the people you know OpenSocial Build social apps that can run anywhere

OpenSocial

OpenSocial: Large and Growing Rapidly

Stay up-to-date with the people you know OpenSocial Build social apps that can run anywhere RSS / Atom Syndicate your activity to share with others Jabber (XMPP) Real-time update stream between sites

Building blocks in action: contacts portability User signs in with an OpenID - Site fetches OpenID URL looks for X-XRDS-Location - Site parses XRDS-Simple doc to discover available APIs Site tries to access contacts API gets a WWW-Authenticate response header specifies OAuth - OAuth Discovery (via XRDS) provides OAuth endpoints Site sends user though OAuth flow to grant access - User returns to site with authorized access token - Site can now access users contacts data via API + token

Performance Challenges Minimizing round trips Discovery, Association, OpenID, OAuth, etc. Combining steps vs. small pieces loosely joined JSON-RPC in OpenSocial (batching API calls) Caching: freshness vs. performance Policies for how long to store personal data Social Graph API: cached web crawl Server-alerted notifications

Performance Challenges (cont.) Pull vs. push: aggregating activity Polling is easy but inefficient & doesnt scale (1000 users every 15 min > 1 hit per sec) XMPP & Gnip: receive update notifications Integrating 3 rd party content Server-side (proxied) vs. client-side (JS onload) Iframe vs. inline New techniques: XFBML, Caja, etc.

…so how do these building blocks fit together?