Web Performance Tuning Lin Wang, Ph.D. US Department of Education Copyright [Lin Wang] [2004]. This work is the intellectual property of the author. Permission.

Slides:



Advertisements
Similar presentations
Lab 4: Sensors for Monitoring Java Applications Omar Badran, Daniel Moyer, Sadia Afroz.
Advertisements

Cultural Heritage in REGional NETworks REGNET Project Meeting Content Group
Technical University of Darmstadt J2EE Performance and Scalability – From Measuring to Predicting Samuel Kounev Databases and Distributed Systems Group,
1 Copyright © 2005, Oracle. All rights reserved. Introduction.
3 Copyright © 2005, Oracle. All rights reserved. Designing J2EE Applications.
1 Copyright © 2005, Oracle. All rights reserved. Introducing the Java and Oracle Platforms.
6 Copyright © 2005, Oracle. All rights reserved. Building Applications with Oracle JDeveloper 10g.
INFSO-RI Enabling Grids for E-sciencE Building a robust distributed system: some lessons from R-GMA CHEP-07, Victoria,
1 G54PRG Programming Lecture 1 Amadeo Ascó Adam Moore G54PRG Programming Lecture 1 Amadeo Ascó 3 Java Programming Language.
The Impact of Soft Resource Allocation on n-tier Application Scalability Qingyang Wang, Simon Malkowski, Yasuhiko Kanemasa, Deepal Jayasinghe, Pengcheng.
Evaluation of performance aspects of the Auto-ID Infrastructure
1 Effective Feedback to the Instructor from Online Homework Michigan State University Mark Urban-Lurain Gerd Kortemeyer.
Chapter 18 Methodology – Monitoring and Tuning the Operational System Transparencies © Pearson Education Limited 1995, 2005.
Copyright 2007, Information Builders. Slide 1 Performance and Tuning Mark Nesson, Vashti Ragoonath June 2008.
Constructing a Non-Linear Model with Neural Networks for Workload Characterization Richard M. Yoo Han Lee Kingsum Chow Hsien-Hsin S. Lee Georgia Tech Intel.
Managing Web server performance with AutoTune agents by Y. Diao, J. L. Hellerstein, S. Parekh, J. P. Bigu Jangwon Han Seongwon Park
QA practitioners viewpoint
Topics to be discussed Introduction Performance Factors Methodology Test Process Tools Conclusion Abu Bakr Siddiq.
Performance Testing - Kanwalpreet Singh.
CHECK 2012 Bridging the Gap for Mobile Devices: Eager Adoption v. Practical Support Emporia State University The Faculty & Staff Support Perspective Cory.
Copyright © 2011 by the Commonwealth of Pennsylvania. All Rights Reserved. Load Test Report.
A Successful Help Desk Process for all IT Support
What Does the Net Generation Expect From Us? SAC August 8, 2005 SAC August 8, 2005 Copyright © 2005, Joel L. Hartman. This work is the intellectual property.
Database System Concepts and Architecture
Student, Faculty, and Staff Data Availability and Protection What’s the Back-Up Plan? (for academic computing) Sponsored by.
© Copyright Computer Lab Solutions All rights reserved. Do you need usage information about your computer labs? Copyright Computer Lab Solutions.
The Academic Computing Assessment Data Repository: A New (Free) Tool for Program Assessment Heather Stewart, Director, Institute for Technology Development,
Copyright Brian T. Huntley and Tim Antonowicz 2007 This work is the intellectual property of the authors. Permission is granted for this material to be.
  Copyright 2003 by SPAN Technologies. Performance Assessments of Internet Systems By Kishore G. Kamath SPAN Technologies Testing solutions for the enterprise.
ManageEngine TM Applications Manager 8 Monitoring Custom Applications.
Migrating to uPortal 2 at UBC Paul Zablosky University of British Columbia Copyright Paul Zablosky This work is the intellectual property of the.
The Architecture of Transaction Processing Systems
Unraveling Web Development PRESENTERS: Bob Nakles and Paras Kaul, George Mason University.
Chapter 9 Overview  Reasons to monitor SQL Server  Performance Monitoring and Tuning  Tools for Monitoring SQL Server  Common Monitoring and Tuning.
Copyright Tim Antonowicz, This work is the intellectual property of the author. Permission is granted for this material to be shared for non- commercial,
© 2007 ADP 1 Java Capacity Planning & Performance Measurements Dr. Carl J. De Pasquale Electronic Numerical Integrator and Computer.
Stellen besetzen. Erfolg ermöglichen. Java EE LoadBalancer.
Managing Enterprise Directories: Operational Issues Performance Monitoring Brendan Bellina, University of Notre Dame Base CAMP – Tempe, Arizona February.
Moving Your Paperwork Online University of California, Irvine presents PayQuest Copyright UC,Irvine This work is the.
J2EE Application Server Deployment and Performance Optimization for Enterprise Application Service Thesis presentation Author: Xiaoyang Wang.
Copyright Michael White and Sandra Thompson, This work is the intellectual property of the author. Permission is granted for this material to be.
M. Taimoor Khan * Java Server Pages (JSP) is a server-side programming technology that enables the creation of dynamic,
Bottlenecks: Automated Design Configuration Evaluation and Tune.
Ideas to Improve SharePoint Usage 4. What are these 4 Ideas? 1. 7 Steps to check SharePoint Health 2. Avoid common Deployment Mistakes 3. Analyze SharePoint.
LoadComplete Testing Tool. LoadComplete Testing Tool.
How to Run a Scenario In HP LoadRunner >>>>>>>>>>>>>>>>>>>>>>
JS (Java Servlets). Internet evolution [1] The internet Internet started of as a static content dispersal and delivery mechanism, where files residing.
Java Web Server Presented by- Sapna Bansode-03 Nutan Mote-15 Poonam Mote-16.
Understanding Performance Testing Basics by Adnan Khan.
Software Architecture in Practice Mandatory project in performance engineering.
Recent Developments in Directories: Performance Monitoring with “Look” Brendan Bellina, University of Notre Dame Spring 2003 Internet2 Member Meeting.
Introduction to Performance Testing Performance testing is the process of determining the speed or effectiveness of a computer, network, software program.
Copyright Michael White and Sylvia Maxwell, This work is the intellectual property of the author. Permission is granted for this material to be shared.
Cofax Scalability Document Version Scaling Cofax in General The scalability of Cofax is directly related to the system software, hardware and network.
Introduction to Performance Tuning Chia-heng Tu PAS Lab Summer Workshop 2009 June 30,
Software Architecture in Practice
Diskpool and cloud storage benchmarks used in IT-DSS
Load Testing January 2018 René Ernst.
Software Architecture in Practice
Copyright Notice Copyright Bob Bailey This work is the intellectual property of the author. Permission is granted for this material to be shared.
Blaine A. Brownell, President,
Evaluating Transaction System Performance
Project for OnLine Instructional Support (POLIS)
ColdFusion Performance Troubleshooting and Tuning
<Project Name & Date> <Presenter Name>
Admission Control and Request Scheduling in E-Commerce Web Sites
myIS.neu.edu – presentation screen shots accompany:
An App A Day Copyright Tina Oestreich and Brian Yuhnke This work is the intellectual property of the author. Permission is granted for this material.
Prof. Leonardo Mostarda University of Camerino
Presentation transcript:

Web Performance Tuning Lin Wang, Ph.D. US Department of Education Copyright [Lin Wang] [2004]. This work is the intellectual property of the author. Permission is granted for this material to be shared for non-commercial, educational purposes, provided that this copyright statement appears on the reproduced materials and notice is given that the copying is by permission of the author. To disseminate otherwise or to republish requires written permission from the author.

1. Introduction Web-based systems consist of multiple components working together:

2. J2EE and Queue Network Java 2 Enterprise Edition (J2EE) is a platform for multi-tier Web systems. J2EE applications service HTTP requests through a network of queues:

3. Performance Tuning Performance refers to how fast HTTP requests are serviced. Performance becomes a critical issue when a Web site processes large volume of requests. Performance bottlenecks are software/hardware components that impede request service. Performance tuning is to identify and eliminate performance bottlenecks.

4. Tuning Steps 1. Understand the application. 2. Design load tests. 3. Perform the load tests and collect data. 4. Analyze the data to identify bottlenecks. 5. Eliminate the bottlenecks. 6. Repeat Steps 3 – 5 until the performance is satisfactory.

5. A Sample Application: CUSER A customer service Web site, CUSER, is a J2EE application using IBM WebSphere Application Server. CUSERV implements JSP and Servlet. CUSER consists of an IBM HTTP Server, WebSphere Application Server (WAS), CICS Transaction Gateway (CTG), and DB2 on OS/390. CUSER has four pools of runtime elements: HTTP server processes, Servlet threads, CTG worker threads, and DB2 tasks. The pools are connected by three queues, HTTP transport, data source connections, CTG connections.

6. Load Test Design (I) Test Scenarios Performance objectives: Response time must not exceed 5 seconds users are to be concurrently serviced. Test scenarios: Retrieve an existing customer record. Create a new customer record.

7. Load Test Design (II) Test Procedure Each scenario run takes 4 minutes and is iterated until the end of test. Each user executes the same scenario throughout the test. Two scenarios are evenly distributed to the users. The test starts with one user. The next user is added 10 seconds after the previous users entry, amounting to total of 1000 users.

8. Load Test Design (III) Instrumentation Instruments: Load simulation: LoadRunner (Mercury) HTTP monitoring: LoadRunner (Mercury) J2EE monitoring: Introscope (Wily) System monitoring: Patrol (BMC) Test environment:

9. Load Test Design (IV) Data Collection Data collection interval: System: Every 15 min. JVM: Every 30 sec. HTTP: Every response.

10. Load Test Design (V) Performance Metrics HTTP metrics: Response Time (RT): The elapsed time between the submission of a HTTP request and the receipt of the corresponding response. Throughput: The amount of data transmitted every second from the Web site to the user. Error Rate: The ratio of failed to succeeded HTTP requests. JVM metrics: JVM CPU usage JVM heap usage HTTP transport thread pool usage CTG response time Servlet response time System metrics: CPU usage Memory usage Disk I/O

11. Test 1 Pre-tuning Test Results (I) RT increased when user load reached about 800. Throughput decreased in the same time. Errors started to occurr. Error types suggested problems on the server side.

12. Test 1 Pre-tuning Test Results (II) CPU was saturated. JVM heap w as saturated. Servlet thread pool was saturated. Servlet response time was increased. The results suggest a memory resource contention.

13. Analysis: Bottlenecks and Tuning System configurations bottlenecks: Connection pools. Thread pools. Tuning: HTTP Transport connection pools size: 45 => 108. Servlet thread pool size: 200 => 120.

14. Test N Final Test Results (I) RTs were less than 5 seconds except for the startup request. Throughput stays adequate and stable. No errors.

15. Test N Final Test Results (II) CPU was 50% utilized. JVM heap usage showed normal. Servlet response time was reasonable. Servlet thread pool showed normal usage (graph was missing).

16. Conclusions Performance tuning of Web-based systems is a multi-variable and iterative process. A systematic planning is an effective approach. The tuning process involves: Application review System review Test design Data collection and analysis System and application modification Test design is crucial to successful performance tuning.