© 2004 - Lindsay Bradford1 Scaling Dynamic Web Content Provision Using Elapsed-Time- Based Content Degradation Lindsay Bradford, Stephen Milliner and.

Slides:



Advertisements
Similar presentations
Managing Web server performance with AutoTune agents by Y. Diao, J. L. Hellerstein, S. Parekh, J. P. Bigu Jangwon Han Seongwon Park
Advertisements

Distributed Multimedia Systems Tarek Elshaarani Vahid Rafiei.
SSRS 2008 Architecture Improvements Scale-out SSRS 2008 Report Engine Scalability Improvements.
1 Storage-Aware Caching: Revisiting Caching for Heterogeneous Systems Brian Forney Andrea Arpaci-Dusseau Remzi Arpaci-Dusseau Wisconsin Network Disks University.
Overview Motivations Basic static and dynamic optimization methods ADAPT Dynamo.
Towards Autonomic Adaptive Scaling of General Purpose Virtual Worlds Deploying a large-scale OpenSim grid using OpenStack cloud infrastructure and Chef.
Techniques for Multicore Thermal Management Field Cady, Bin Fu and Kai Ren.
1 SEDA: An Architecture for Well- Conditioned, Scalable Internet Services Matt Welsh, David Culler, and Eric Brewer Computer Science Division University.
Adding scalability to legacy PHP web applications Overview Mario A. Valdez-Ramirez.
Mohammed Abouzour, Kenneth Salem, Peter Bumbulis Presentation by Mohammed Abouzour SMDB2010.
Toolbox Mirror -Overview Effective Distributed Learning.
ManageEngine TM Applications Manager 8 Monitoring Custom Applications.
Technical Architectures
CSE 190: Internet E-Commerce Lecture 16: Performance.
OCT1 Principles From Chapter One of “Distributed Systems Concepts and Design”
Outline IS400: Development of Business Applications on the Internet Fall 2004 Instructor: Dr. Boris Jukic Web Applications for Business: Performance Issues.
Copyright © 2002 Pearson Education, Inc. Slide 4-1 Choosing the Hardware for an E-commerce Site  Hardware platform  Refers to all the underlying computing.
Differentiated Multimedia Web Services Using Quality Aware Transcoding S. Chandra, C.Schlatter Ellis and A.Vahdat InfoCom 2000, IEEE Journal on Selected.
Adaptive Content Delivery for Scalable Web Servers Authors: Rahul Pradhan and Mark Claypool Presented by: David Finkel Computer Science Department Worcester.
Java Server Team 8. Overview What is a Java Server? History Architecture Advantages Disadvantages Current Technologies Conclusion.
User-Level Interprocess Communication for Shared Memory Multiprocessors Brian N. Bershad, Thomas E. Anderson, Edward D. Lazowska, and Henry M. Levy Presented.
What is adaptive web technology?  There is an increasingly large demand for software systems which are able to operate effectively in dynamic environments.
1 Java Server Pages Can web pages be created specially for each user? What part does Java play?
DotSlash: Providing Dynamic Scalability to Web Applications Weibin Zhao and Henning Schulzrinne Department of Computer Science, Columbia University More.
IST346:  Web Services. Today’s Agenda  Learn the basics of how the Web works  Understand various web service architectures  Address scaling, security,
23 September 2004 Evaluating Adaptive Middleware Load Balancing Strategies for Middleware Systems Department of Electrical Engineering & Computer Science.
Towards Autonomic Hosting of Multi-tier Internet Services Swaminathan Sivasubramanian, Guillaume Pierre and Maarten van Steen Vrije Universiteit, Amsterdam,
Web Application Architecture: multi-tier (2-tier, 3-tier) & mvc
Server Side Scripting Norman White. Where do we do processing? Client side – Javascript (embed code in html) – Java applets (send java program to run.
SEDA: An Architecture for Well-Conditioned, Scalable Internet Services by, Matt Welsh, David Culler, and Eric Brewer Computer Science Division University.
Supporting Strong Cache Coherency for Active Caches in Multi-Tier Data-Centers over InfiniBand S. Narravula, P. Balaji, K. Vaidyanathan, S. Krishnamoorthy,
Designing Efficient Systems Services and Primitives for Next-Generation Data-Centers K. Vaidyanathan, S. Narravula, P. Balaji and D. K. Panda Network Based.
Introduction to ASP.NET. Prehistory of ASP.NET Original Internet – text based WWW – static graphical content  HTML (client-side) Need for interactive.
PowerTier EJB in High-Performance Applications John Killoran European Technical Services Manager Persistence Software.
SEDA: An Architecture for Well-Conditioned, Scalable Internet Services
CPU Cache Prefetching Timing Evaluations of Hardware Implementation Ravikiran Channagire & Ramandeep Buttar ECE7995 : Presentation.
® IBM Software Group © 2007 IBM Corporation J2EE Web Component Introduction
Othman Othman M.M., Koji Okamura Kyushu University 1.
CHEN Ge CSIS, HKU March 9, Jigsaw W3C’s Java Web Server.
The Web Architecture and ASP.NET. Slide 2 Review of the Web (1) It began with HTTP and HTML, which delivers static Web pages to browsers which would render.
A Framework for Elastic Execution of Existing MPI Programs Aarthi Raveendran Tekin Bicer Gagan Agrawal 1.
Implementation - Part 2 CPS 181s March 18, Pieces of the Site-building Puzzle Page 180, figure 4.1.
1 Wenguang WangRichard B. Bunt Department of Computer Science University of Saskatchewan November 14, 2000 Simulating DB2 Buffer Pool Management.
CloudNaaS: A Cloud Networking Platform for Enterprise Applications Theophilus Benson*, Aditya Akella*, Anees Shaikh +, Sambit Sahu + (*University of Wisconsin,
Webcommerce Computer Networks Webcommerce by Linnea Reppa Douglas Martindale Lev Shalevich.
Computer Emergency Notification System (CENS)
Module 10 Administering and Configuring SharePoint Search.
Introducing ASP.NET 2.0. Internet Technologies WWW Architecture Web Server Client Server Request Response Network HTTP TCP/IP PC/Mac/Unix + Browser (IE,
“Load Testing Early and Often” By Donald Doane Presentation to the Rockville MDCFUG.
SOS: An Architecture For Mitigating DDoS Attacks Angelos D. Keromytis, Vishal Misra, Dan Rubenstein ACM SIGCOMM 2002 Presented By : Tracy Wagner CDA 6938.
© 2005 BEA Systems, Inc. | 1 Portal Server Cache Settings Plumtree (BEA ALUI) March, 2007.
(c) Lindsay Bradford1 Varying Resource Consumption to achieve Scalable Web Services Lindsay Bradford Centre for Information Technology Innovation.
ASP (Active Server Pages) by Bülent & Resul. Presentation Outline Introduction What is an ASP file? How does ASP work? What can ASP do? Differences Between.
C-Hint: An Effective and Reliable Cache Management for RDMA- Accelerated Key-Value Stores Yandong Wang, Xiaoqiao Meng, Li Zhang, Jian Tan Presented by:
Running Kuali: A Technical Perspective Ailish Byrne (Indiana University) Jonathan Keller (University of California, Davis)
GIS in the cloud: implementing a Web Map Service on Google App Engine Jon Blower Reading e-Science Centre University of Reading United Kingdom
JS (Java Servlets). Internet evolution [1] The internet Internet started of as a static content dispersal and delivery mechanism, where files residing.
CSI 3125, Preliminaries, page 1 SERVLET. CSI 3125, Preliminaries, page 2 SERVLET A servlet is a server-side software program, written in Java code, that.
Managing Web Server Performance with AutoTune Agents by Y. Diao, J. L. Hellerstein, S. Parekh, J. P. Bigus Presented by Changha Lee.
Introduction to ASP.NET development. Background ASP released in 1996 ASP supported for a minimum 10 years from Windows 8 release ASP.Net 1.0 released.
1 Web Programming with Servlets & JSPs WEB APPLICATIONS – AN OVERVIEW.
Cofax Scalability Document Version Scaling Cofax in General The scalability of Cofax is directly related to the system software, hardware and network.
Cloud-based movie search web application with transaction service Group 14 Yuanfan Zhang Ji Zhang Zhuomeng Li.
Fault – Tolerant Distributed Multimedia Streaming Web Application By Nirvan Sagar – Srishti Ganjoo – Syed Shahbaaz Safir
WWW and HTTP King Fahd University of Petroleum & Minerals
EADD – Introduction Chapter -1.
AWS Cloud Computing Masaki.
Specialized Cloud Architectures
Performance-Robust Parallel I/O
SEDA: An Architecture for Well-Conditioned, Scalable Internet Services
Presentation transcript:

© Lindsay Bradford1 Scaling Dynamic Web Content Provision Using Elapsed-Time- Based Content Degradation Lindsay Bradford, Stephen Milliner and Marlon Dumas Contact: Centre for Information Technology Innovation, Queensland University of Technology WISE 2004

© Lindsay Bradford2 Overview Motivation Background Our Content Degradation Prototype Experiments and Results Ongoing and Future Work

© Lindsay Bradford3 Motivation: Scalability Matters Users expect “service on demand” from the Web - Bhatti et.al Dynamic web content:  On the increase – Barford et.al  Much harder to scale than static content – Stading et.al  Consider: Web Services (SOAP, WSDL, etc), easier to build clients with much smaller “think times”, greater strain on scalability.

© Lindsay Bradford4 Scaling Dynamic Web Content Our focus is on dynamic web content scalability at a single server:  Desire: Minimise TOC (Total Cost of Ownership). Single-Server Scalability = Bottleneck Reduction. Resource Bottleneck for:  Static Web Content (HTML files, etc) = Bandwidth  Dynamic Web Content (JSP, ASP, PHP, etc) = CPU, Stading, Padmanablan, Challenger. User-perceived QoS ≈ elapsed-time, not CPU.

© Lindsay Bradford5 Background: Dynamic Content Degradation: Deliver degraded version of content under load. Aim: deliver “acceptable” version to an end user that is cheaper to deliver than original.  Static web images – Abdelzaher and Bhatti,  Multimedia - Chandra et al.  Degrading content via a distributed, tiered network - Chen and Iyengar. As opposed to:  Dynamic Web Content Caching: Has limited applicability.  Resource Management: Can deny access to unlucky majority.

© Lindsay Bradford6 Example:

© Lindsay Bradford7 Guiding Heuristics: Pick content that will respond within human acceptable elapsed-time. (< 1 second, based on HCI research - Ramsay et.al, Bhatti et.al, Bouch et.al) Prefer more costly content to less costly where possible. Balance content generation time against target response time. Deliberately limit scope to “Application Programmer” perspective.  No modification of supporting technologies (App Servers, etc).  What could developers do right now?  What limits exist?

© Lindsay Bradford8 Our Content Degradation Prototype: A number of approaches to generating same web content (same URI). An Approach Selector to pick which approach is most appropriate.  Two parameters: lower-time-limit and upper-time-limit.  Parameters act as elapsed-time thresholds. Cross a threshold, choose a different approach.  Slowest content generating approach called a baseline.

© Lindsay Bradford9 Our Prototype(2): Contains memory of last n (20 for experiments) elapsed-times for response generation per approach. Longer the memory, the more pessimistic selector becomes about the future. “Current worst elapsed time” of an approach crossing one of the time-limit bounds triggers approach change.

© Lindsay Bradford10 Our Prototype (3): Approach Selector Design

© Lindsay Bradford11 Approach Selector Implementation: Unmodified Apache Tomcat Approach Selector as a ``ServletFilter’’ Approaches as Servlets:  4 instances of a floating-point division servlet, configured to 100, 500, 1000 and 3000 loops.  4 instances of a memory-intensive lookup servlet with same loop numbers as above.  3000 loop servlets are baseline approaches.

© Lindsay Bradford12 The Test Traffic Patterns: Response is adequate if <= 1 second elapsed-time between request sent & response received at client. –Steady – Server under constant load –Periodic – Server alternates between 1 minute of load and 1 minute of no requests.

© Lindsay Bradford13 Periodic Pattern Latency:

© Lindsay Bradford14 Periodic Pattern Throughput:

© Lindsay Bradford15 Steady Pattern Latency:

© Lindsay Bradford16 Steady Pattern Throughput:

© Lindsay Bradford17 Periodic Limit Variance: Latency

© Lindsay Bradford18 Periodic Limit Variance: Throughput

© Lindsay Bradford19 Steady Limit Variance: Latency

© Lindsay Bradford20 Steady Limit Variance: Throughput

© Lindsay Bradford21 Results using Approach Selector: Benefit of Approach Selector outweighs overhead. Significant scalability recorded against our one second (user expected) response time target. Approach Selector Parameters:  lower-time-limit matters. Algorithm is far less sensitive to upper-time-limit variations.  Must pessimistically configure the Approach Selector to partially compensate for the elapsed- time missed by the Approach Selector.

© Lindsay Bradford22 Future Work: Approach Selector New I/O (Database simulation) servlet Altering the Approach Selection Heuristic  Automatic lower-time-limit variance.  Automatic variance of remembered response times. Guidelines for automated service adaptation to request traffic.

© Lindsay Bradford23 Future Work: Architecture Want to answer : “How can we minimise the overhead of the application development process WRT content degradation?”  Avoid JIC (Just in case) degradation. Explore JIT (Just in time).  Declarative approach, mark-up code that degrades with alternatives  Manual, fine-grained behaviour alteration at run-time (exploring now – adaptable architecture based on generative communications). Servlet engine architecture (and specification) too limiting. We desire a more adaptive architecture:  Ability to dynamically alter supporting architecture and its configuration (thread limits, etc)  Ability to manually modify behaviour as load changes. Individual (running) object replacement; objects interacting that know nothing of each other.

© Lindsay Bradford24 Finish. Questions? Comments?