TESTING AND OPTIMIZING WEB APPLICATION S PERFORMANCE AQA CASE STUDY



Similar documents
Siebel & Portal Performance Testing and Tuning GCP - IT Performance Practice

Mike Chyi, Micro Focus Solution Consultant May 12, 2010

Application Performance Testing Basics

Performance And Scalability In Oracle9i And SQL Server 2000

Web Application s Performance Testing

SQL Server Performance Tuning and Optimization

Resource Monitoring During Performance Testing. Experience Report by Johann du Plessis. Introduction. Planning for Monitoring

Microsoft SQL Server: MS Performance Tuning and Optimization Digital

Case Study - I. Industry: Social Networking Website Technology : J2EE AJAX, Spring, MySQL, Weblogic, Windows Server 2008.

Load Testing on Web Application using Automated Testing Tool: Load Complete

Performance Testing Why and How? Sudheer Parpatakam

How To Test For Performance And Scalability On A Server With A Multi-Core Computer (For A Large Server)

Performance Tuning and Optimizing SQL Databases 2016

Load Testing and Monitoring Web Applications in a Windows Environment

Load Testing Tools. Animesh Das

Crank Your BI Performance up to 11 - Sizing, Tuning & Performance Testing. Innovation Center Network, Silicon Valley Active Global Support

IBM RATIONAL PERFORMANCE TESTER

Comparative Study of Load Testing Tools

<Insert Picture Here> Adventures in Middleware Database Abuse

WHAT WE NEED TO START THE PERFORMANCE TESTING?

Load Testing Analysis Services Gerhard Brückl

BW-EML SAP Standard Application Benchmark

Tuning Tableau Server for High Performance

AgencyPortal v5.1 Performance Test Summary Table of Contents

Recommendations for Performance Benchmarking

How To Test On The Dsms Application

Introduction. Part I: Finding Bottlenecks when Something s Wrong. Chapter 1: Performance Tuning 3

OTM Performance OTM Users Conference Jim Mooney Vice President, Product Development August 11, 2015

Audit & Tune Deliverables

PERFORMANCE TESTING. New Batches Info. We are ready to serve Latest Testing Trends, Are you ready to learn.?? START DATE : TIMINGS : DURATION :

Rapid Bottleneck Identification

Performance Testing of Java Enterprise Systems

NetIQ Access Manager 4.1

Estimate Performance and Capacity Requirements for Workflow in SharePoint Server 2010

Enterprise GIS Architecture Deployment Options. Andrew Sakowicz

HOW TO EVALUATE AND SELECT TOOL A HIGH-END LOAD TESTING. Marquis Harding Reality Test P R E S E N T A T I O N. Presentation. Bio

Performance Analysis and Capacity Planning Whitepaper

SAP HANA In-Memory Database Sizing Guideline

Managing and Monitoring Windows 7 Performance Lesson 8

Web Application Testing. Web Performance Testing

How To Test For Performance

Copyright 1

Oracle Primavera P6 Enterprise Project Portfolio Management Performance and Sizing Guide. An Oracle White Paper October 2010

SOFTWARE PERFORMANCE TESTING SERVICE

Bringing Value to the Organization with Performance Testing

Case Study: Load Testing and Tuning to Improve SharePoint Website Performance

Successful Factors for Performance Testing Projects. NaveenKumar Namachivayam - Founder - QAInsights

One Server Per City: C Using TCP for Very Large SIP Servers. Kumiko Ono Henning Schulzrinne {kumiko, hgs}@cs.columbia.edu

A Comparison of Software Architectures for E-Business Applications

Chapter 1: Introduction to ArcGIS Server

Informatica Data Director Performance

Testing Automation for Distributed Applications By Isabel Drost-Fromm, Software Engineer, Elastic

Holistic Performance Analysis of J2EE Applications

Oracle Real-Time Scheduler Benchmark

Best Practices for Deploying SSDs in a Microsoft SQL Server 2008 OLTP Environment with Dell EqualLogic PS-Series Arrays

Monitoring Remedy with BMC Solutions

Web Load Stress Testing

Best Practices for Web Application Load Testing

JBoss Seam Performance and Scalability on Dell PowerEdge 1855 Blade Servers

Oracle Applications Release 10.7 NCA Network Performance for the Enterprise. An Oracle White Paper January 1998

Chapter 1 - Web Server Management and Cluster Topology

bla bla OPEN-XCHANGE Open-Xchange Hardware Needs

Managing your Red Hat Enterprise Linux guests with RHN Satellite

Business white paper. HP Process Automation. Version 7.0. Server performance

How To Model A System

Performance Analysis of Web based Applications on Single and Multi Core Servers

White paper: Unlocking the potential of load testing to maximise ROI and reduce risk.

Performance Testing Percy Pari Salas

Oracle Data Integrator 12c: Integration and Administration

Oracle Data Integrator 11g: Integration and Administration

An Oracle White Paper March Load Testing Best Practices for Oracle E- Business Suite using Oracle Application Testing Suite

Evaluation of Load/Stress tools for Web Applications testing

ENOVIA V6 Architecture Performance Capability Scalability

SOLUTION BRIEF: SLCM R12.7 PERFORMANCE TEST RESULTS JANUARY, Load Test Results for Submit and Approval Phases of Request Life Cycle

Ensuring Web Service Quality for Service-Oriented Architectures. An Oracle White Paper June 2008

SharePoint Capacity Planning Balancing Organiza,onal Requirements with Performance and Cost

Distributed applications monitoring at system and network level

Common Server Setups For Your Web Application - Part II

SharePoint 2010 Performance and Capacity Planning Best Practices

ArcGIS Server Performance and Scalability Optimization and Testing. Andrew Sakowicz

Whitepaper Performance Testing and Monitoring of Mobile Applications

Liferay Portal Performance. Benchmark Study of Liferay Portal Enterprise Edition

An Oracle White Paper July Oracle Primavera Contract Management, Business Intelligence Publisher Edition-Sizing Guide

A Middleware Strategy to Survive Compute Peak Loads in Cloud

Performance Testing Process A Whitepaper

Performance Testing. Slow data transfer rate may be inherent in hardware but can also result from software-related problems, such as:

An Oracle White Paper Released Sept 2008

How To Test For Elulla

Using VMware VMotion with Oracle Database and EMC CLARiiON Storage Systems

Oracle Utilities Mobile Workforce Management Benchmark

Scaling out a SharePoint Farm and Configuring Network Load Balancing on the Web Servers. Steve Smith Combined Knowledge MVP SharePoint Server

MAGENTO HOSTING Progressive Server Performance Improvements

How To Test A Web Server

Transcription:

TESTING AND OPTIMIZING WEB APPLICATION S PERFORMANCE AQA CASE STUDY

2 Intro to Load Testing Copyright 2009 TEST4LOAD Software Load Test Experts

What is Load Testing? Load testing generally refers to the practice of modeling the expected usage of a software program by simulating multiple users accessing the program's services concurrently. As such, this testing is most relevant for multi-user systems, often one built using a client/server model, such as web applications. Copyright 2009 TEST4LOAD Software Load Test Experts 3

Why Load Test Your Application? High cost of mission-critical application failure Simulate real-life workload conditions Find boundaries of your system Locate potential problems before your customers do Reduce development cycle and time-to-market Predict and reduce infrastructure costs Copyright 2009 TEST4LOAD Software Load Test Experts 4

Load Testing Goals Performance Ensure your application s performance under basic workload (baseline) Stress Find break points and boundaries of your application Reliability How stable is your application under extended period of load Scalability Determine how your application scales for the workload growth Copyright 2009 TEST4LOAD Software Load Test Experts 5

Load Testing and Product Life Cycle Requirements Design Development Testing Production Define performance requirements Design your system based on performance requirements Load test separate components Load test a whole system Monitor your system s performance Copyright 2009 TEST4LOAD Software Load Test Experts 6

Load Testing Workflow Plan Script Test Analyze Improve Copyright 2009 TEST4LOAD Software Load Test Experts 7

8 AQA Case Study Copyright 2009 TEST4LOAD Software Load Test Experts

Background AQA The Assessment and Qualifications Alliance (AQA) is the largest of the three English exam boards. Awarding 49% of full course GCSEs and 42% of A- levels nationally. Processing over 3.5 million exams each year. Providing online services to teachers, exams officers, examiners and students. Copyright 2009 TEST4LOAD Software Load Test Experts 9

SUT ERA (Enhanced Results Analysis) ERA is a free on-line tool that gives teachers in UK an instant analysis of exam results. ERA s key features: Grades reports by centre and subject Cross-centre and years results comparison Individual students grades analysis Question by question analysis Copyright 2009 TEST4LOAD Software Load Test Experts 10

The Challenge Database size over 100 million records 10 million active records 70,000 users 3000 2500 2000 1500 1000 500 0 22/08/2007 - Requests per 10 minutes 00:00 01:00 02:00 03:00 04:00 05:00 06:00 07:00 08:00 09:00 10:00 11:00 12:00 13:00 14:00 15:00 16:00 17:00 18:00 19:00 20:00 21:00 22:00 23:00 14/08/2007 - Requests per 10 minutes Copyright 2009 TEST4LOAD Software Load Test Experts 11 3000 2500 2000 1500 1000 500 0 00:00 01:00 02:00 03:00 04:00 05:00 06:00 07:00 08:00 09:00 10:00 11:00 12:00 13:00 14:00 15:00 16:00 17:00 18:00 19:00 20:00 21:00 22:00 23:00 Workload of less than 10 pages/min at usual day Pick of 300 pages/min at results day

Deployment Architecture Copyright 2009 TEST4LOAD Software Load Test Experts 12

Test Architecture Server Oracle Web Cache Oracle AS Oracle RDBMS Configuration Microsoft Windows Server 32bit Oracle Web Cache 10.2.2 RedHat Linux ES4 U6 Oracle Application Server 10.3.3 ChartFX 6.2 RedHat Linux AS4 U7 Oracle RDBMS 10.2.0.3 Copyright 2009 TEST4LOAD Software Load Test Experts 13

Identifying Test Scenarios 14 Pick 5 most common scenarios in your system Don t add scenarios which operate similar back-end flows Identify problematic back-end flows ahead and make sure scenarios cover them. Copyright 2009 TEST4LOAD Software Load Test Experts

Identifying Potential Bottlenecks Search Usually sensitive to various input values. Simple or not implemented paging can cause to slow response time Search Results If paging is not implemented, result page can be very large Back to search results page from item details can execute search again External and 3rd Party Components 3rd party components can cause to deadlocks or poor performance OSSO server can perform slower than the rest of the system Export to Excel Usually returns large result set. Can cause to slow performance. Copyright 2009 TEST4LOAD Software Load Test Experts 15

Execution Plan Test the system with light input parameters first Get through the obvious bottlenecks, constantly increasing the workload Run nightly tests every night to ensure reliability and stability of the system At level of 500 users, apply heavy input parameters Test system for randomly distributed workload Copyright 2009 TEST4LOAD Software Load Test Experts 16

10 Users Conn. Pool Starvation Measurement Avg./Sum Max. Page Time 1.6 sec 34 sec HTTP 200 3,348 HTTP 304 2,190 HTTP 302 410 HTTP 500 48 100% 80% 60% 40% 20% 0% Connection Pool Connections Copyright 2009 TEST4LOAD Software Load Test Experts 17

100 Users Apache Shows Its Limit Measurement Avg./Sum Max. Load Size 100 Page Time 5.6 sec 67 sec Pages per Second 2.1 7.5 HTTP 503 8 Copyright 2009 TEST4LOAD Software Load Test Experts 18

500 Users Slow DB & OSSO Measurement Avg/Sum Max. Load Size 1000 Page Time 24 sec 2.5 min Pages per Second 7 19 HTTP 500 368 HTTP 503 157 Copyright 2009 TEST4LOAD Software Load Test Experts 19

1000 Users Search & Large Content Measurement Average/ Sum Max. Load Size 1000 Page Time 1 min 7.5 min HTTP 500 27 HTTP 503 626 Copyright 2009 TEST4LOAD Software Load Test Experts 20

Concluding 1000 Users 8 hrs Test Measurement Average/ Sum Max. Load Size 1000 Page Time 0.717 sec 6.169 sec Copyright 2009 TEST4LOAD Software Load Test Experts 21

Load Issues Pyramid 10 Conn. Starvation 100 Apache Limit 500 Slow DB Queries 1000 Code, Search, Cache Copyright 2009 TEST4LOAD Software Load Test Experts 22

Achieved Results Supported concurrent sessions/users: From 10 to 1000 (x100) Reliability From 90% failure to ~100% reliable system Response Time at 1000 VU From 1 min to less than a second Pages per Minute From 13 PPM to 166 PPM Copyright 2009 TEST4LOAD Software Load Test Experts 23

24 Tips for Effective Load Testing Copyright 2009 TEST4LOAD Software Load Test Experts

Optimizing Search Mechanism Use existing solutions. Use free text search only as the last option. Limit user input to reasonable values. Implement paging on both search and result levels. Improve Back to search results mechanism. Copyright 2009 TEST4LOAD Software Load Test Experts 25

GZip Compression Effectiveness Pros: Reduce size of large text pages by 80%-90% Improve response time by 50% Decrease throughput Cons: Increased CPU utilization by 35% Tip: Apply GZip selectively to text-based static resources and large dynamic pages Do not apply GZip to every response! Copyright 2009 TEST4LOAD Software Load Test Experts 26

Database vs Web Servers Costs Additional database setup and maintenance costs are significantly higher than of web server. Make DB work easier by making web server work harder. Memory costs less than CPU or new hardware rely more on memory, but keep in mind that everything has its limits. Copyright 2009 TEST4LOAD Software Load Test Experts 27

Developers and Testers Tips Get to know your user. Evaluate his system usage behavior or try to predict the common flow. Know the costly operations of your system. Try to build the flow that omits recurrent usage of the operations. Do not be reluctant to cache data, still don t overuse the cache. Remember that shared data should be stored once for all users. Copyright 2009 TEST4LOAD Software Load Test Experts 28

Project Manager Tips Make sure all involved parties are available at the moment of test execution. Share test findings among all project members. Log all changes to the test environment. You will need to reapply them later to the production environment. Make sure the final results meet the performance requirements and business user expectations. Copyright 2009 TEST4LOAD Software Load Test Experts 29

Team Synergy Synergy and cooperation between the following teams is crucial for the success of the test: Database Team Application/Development Team System Team Performance Team or Specialist Copyright 2009 TEST4LOAD Software Load Test Experts 30

Questions? Contact Info Nachum (Nick) Dimer Owner & Chief Consultant IL: +972.54.4600515 UK: +44.783.8673770 PL: +48.519.717875 ndimer@test4load.com www.test4load.com