Planning the Capacity of a Web Server: An Experience Report D. Menascé. All Rights Reserved.

Similar documents
A Systematic Approach to Performance Evaluation

End-To-End Scaling: The Response Time Pipe

Treinamento em Análise Quantitativa & Planejamento de Capacidade. Virgilio A. F. Almeida

End-To-End Scaling: The Response Time Pipe

<Insert Picture Here> Oracle Exalogic Elastic Cloud: Revolutionizing the Datacenter

Naomi Mitsumori Terri Vines Annie Hoefs IBM Global Services

Oracle Financial Services Revenue Management and Billing V2.3 Performance Stress Test on Exalogic X3-2 & Exadata X3-2

IBM Content Collector for SAP Applications Sizing, Configuration, and High Availability. White Paper

Treinamento em Análise Quantitativa & Planejamento de Capacidade. Virgilio A. F. Almeida

Ch. 6: Understanding and Characterizing the Workload

Scheduling I. Today. Next Time. ! Introduction to scheduling! Classical algorithms. ! Advanced topics on scheduling

OPERATING SYSTEMS. Systems and Models. CS 3502 Spring Chapter 03

Sizing SAP Central Process Scheduling 8.0 by Redwood

DELL EMC ISILON INSIGHTIQ

Scalability and High Performance with MicroStrategy 10

Introduction to IBM Insight for Oracle and SAP

Oracle Communications Billing and Revenue Management Elastic Charging Engine Performance. Oracle VM Server for SPARC

APF/RTD ON INTEL ARCHITECTURE FOR 300MM

Infor LN UI Sizing Guide

E-BUSINESS SUITE APPLICATIONS R12 (12.1.2) LARGE/EXTRA-LARGE PAYROLL (BATCH) BENCHMARK -

Parallels Remote Application Server and Microsoft Azure. Scalability and Cost of Using RAS with Azure

Infor LN UI 11.3 Sizing Guide

Performance Baseline of Hitachi Data Systems UCP for Oracle

Accenture* Integrates a Platform Telemetry Solution for OpenStack*

PEOPLESOFT 8.8 GLOBAL CONSOLIDATIONS

Autonomic Virtualized Environments

Operations and Production Management GPO300

IBM xseries 430. Versatile, scalable workload management. Provides unmatched flexibility with an Intel architecture and open systems foundation

Enabling Resource Sharing between Transactional and Batch Workloads Using Dynamic Application Placement

A WORKLOAD GENERATOR FOR DATABASE SYSTEM BENCHMARKS. Hoe Jin Jeong and Sang Ho Lee

Ready for the storm. by Paul Nelson. Crown copyright Met Office

NaviCloud Sphere. NaviCloud Pricing and Billing: By Resource Utilization, at the 95th Percentile. A Time Warner Cable Company.

Black-Box Approach to Capacity Identification for Multi-Tier Applications Hosted on Virtualized Platforms

High-Volume Web Site Performance Simulator for WebSphere

The IBM and Oracle alliance. Power architecture

Infor Ming.le - LN UI Plugin Sizing Guide

E-BUSINESS SUITE APPLICATIONS R12 (R12.1.3) ORDER- TO-CASH (BATCH) BENCHMARK - USING ORACLE DATABASE 11g ON ORACLE S SPARC T7-1 SERVER

Capacity Planning for Web-Based Internet Business Services

Understanding the Behavior of In-Memory Computing Workloads. Rui Hou Institute of Computing Technology,CAS July 10, 2014

HTCaaS: Leveraging Distributed Supercomputing Infrastructures for Large- Scale Scientific Computing

ECLIPSE 2012 Performance Benchmark and Profiling. August 2012

Tony Cedergren Head of Application Oriented Service & Infra. Flash Forward Application Performance in Mainframe Environments

ITIL Capacity Management for the Newbie For those new to system z. Charles Johnson Principal Consultant

Cluster Workload Management

IBM WebSphere Extended Deployment, Version 5.1

NVIDIA QUADRO VIRTUAL DATA CENTER WORKSTATION APPLICATION SIZING GUIDE FOR SIEMENS NX APPLICATION GUIDE. Ver 1.0

Simplifying Hadoop. Sponsored by. July >> Computing View Point

CHAPTER 3: REQUIREMENT ANALYSIS

Microsoft Dynamics AX 2012 Day in the life benchmark summary

Copyright 2012, Oracle and/or its affiliates. All rights reserved.

This specific set of services is designed to support the operating of the SAP HANA on the Power Systems infrastructures.

Addressing UNIX and NT server performance

Dive into nova scheduler performance

CAPACITY MANAGEMENT GUIDELINES FOR VBLOCK INFRASTRUCTURE PLATFORMS

Axibase Warehouse Designer. Overview

How fast is your EC12 / z13?

A Profile Guided Approach to Scheduling in Cluster and Multi-cluster Systems

Datacenter Resource Management First Published On: Last Updated On:

Getting started with load & performance testing

Defect Tracking System

DATAPREV Rio de Janeiro 16 Dezembro de capacidade. Departamento de Ciência da Computação Universidade Federal de Minas Gerais - UFMG

PEOPLESOFT ELM 9.0 USING ORACLE10g ON IBM BLADECENTER SERVERS

CS5239 Computer System Performance Evaluation

IBM Tivoli OMEGAMON XE for. WebSphere Business Integration. Optimize management of your messaging infrastructure. Highlights

Lecture 6: CPU Scheduling. CMPUT 379, Section A1, Winter 2014 February 5

E-BUSINESS SUITE APPLICATIONS R12 (RUP 4) LARGE/EXTRA-LARGE PAYROLL (BATCH) BENCHMARK -

Performance Evaluation of Selected Job Management Systems

Oracle Performance on Sun Server X4170 with Violin Memory Array Benchmark Report June 2012

Leveraging smart meter data for electric utilities:

E-BUSINESS SUITE APPLICATIONS R12 (R12.1.2) ORDER- TO-CASH (BATCH) BENCHMARK - USING ORACLE DATABASE 11g ON AN IBM Power 730 SERVER

PEOPLESOFT ENTERPRISE GLOBAL PAYROLL 8.9 (FRANCE) USING ORACLE9i ON A HEWLETT-PACKARD INTEGRITY rx8620

Leveraging smart meter data for electric utilities:

1 Copyright 2011, Oracle and/or its affiliates. All rights reserved.

Infor LN Minimum hardware requirements. Sizing Documentation

Apache Kafka. A distributed publish-subscribe messaging system. Neha Narkhede, 11/11/11

Moreno Baricevic Stefano Cozzini. CNR-IOM DEMOCRITOS Trieste, ITALY. Resource Management

HPC USAGE ANALYTICS. Supercomputer Education & Research Centre Akhila Prabhakaran

Capacity Planning of a Commodity Cluster in an Academic Environment: A Case Study

ISILON ONEFS CLUSTER OPTIMIZATION

Analysis Services. Show Me Where It Hurts. Bill Anton Head Beaver Prime Data Intelligence, LLC

Windows Server Capacity Management 101

An Oracle White Paper June Maximizing Performance and Scalability of a Policy Automation Solution

System i Navigator family applications

E-BUSINESS SUITE APPLICATIONS R12 (12.1.3) EXTRA- LARGE PAYROLL (BATCH) BENCHMARK - USING ORACLE11g ON AN IBM Power System S824

Oracle PaaS and IaaS Universal Credits Service Descriptions

Configuring Performance Routing Cost Policies

IBM Tivoli Monitoring

Big Data, Smart Energy, and Predictive Analytics. Dr. Rosaria Silipo Phil Winters

Smart GSM NMS Smart Network Management System

************************************************************************ ************************************************************************

IBM Data Management Services Softek Replicator UNIX technical overview Data protection with replication for increased availability

Performance Evaluation of Selected Job Management Systems

Oracle Performance on Oracle Database Appliance. Benchmark Report August 2012

A FRAMEWORK FOR CAPACITY ANALYSIS D E B B I E S H E E T Z P R I N C I P A L C O N S U L T A N T M B I S O L U T I O N S

Exhibit 1 - MyFloridaNet-2 Services - Service Level Agreements Financial Consequence for non-performance

Synthesizing Representative I/O Workloads Using Iterative Distillation (Extended Version GIT-CERCS-03-29) Last revised: 18 December 2003

Increasing Enterprise Support Demand & Complexity

Network Management Functions - Accounting. Network Management

Chapter 6: Performance tracking and usage tracking in Cloud Infrastructure

July, 10 th From exotics to vanillas with GPU Murex 2014

Transcription:

Planning the Capacity of a Web Server: An Experience Report Daniel A. Menascé George Mason University menasce@cs.gmu.edu Nikki Dinh SRA International, Inc. nikki_dinh@sra.com Robert Peraino George Mason University peraino@gmu.edu Quan T. Dinh Lockheed Martin Federal Systems quan.t.dinh@lmco.com 1

Outline Motivation Capacity Planning Methodology Applying the Methodology Concluding Remarks 2

Motivation University s WWW server is a highly visible production server. Server now supports a wide range of business processes. Lack of methodology to understand workload and size web server. 3

Methodology Understanding the Environment Developing a Cost Workload Characterization Cost Cost Prediction Workload Validation and Calibration Workload Forecasting Performance Prediction Performance Valid Cost/Performance Analysis Configuration Plan Investment Plan Personnel Plan 4

Methodology Understanding the Environment Developing a Cost Workload Characterization Cost Cost Prediction Workload Validation and Calibration Workload Forecasting Performance Prediction Performance Valid Cost/Performance Analysis Configuration Plan Investment Plan Personnel Plan 5

Understanding the Environment: Server Configuration CPU 1 168 MHz CPU 2 168 MHz Disk 1 Operating System Disk 2 HTTP Logs OS: Sun Solaris 2.6 Web server: Apache v. 1.3.4 256 MB RAM Disk 3 Document Tree 6

Understanding the Environment: Server Connectivity www.gmu.edu Web Server 100 Mbps Ethernet LAN Router Internet T3 line Client Client 7

Understanding the Environment: Peak Period Analysis: Hour of Day 13.2 million request during February 99. Avgs. computed for each minute. Peak period: 9 AM to 5 PM Avg. arrival rate over entire month: 5.49 requests/sec Maximum rate: 28.4 requests/sec Minimum rate: 0.017 requests/sec 8

Understanding the Environment: Hour of Day and Day of Week day of the week: 0 is Monday and 6 is Sunday Peak period: weekdays from 9 AM to 5PM. 9

Methodology Understanding the Environment Developing a Cost Workload Characterization Cost Cost Prediction Workload Validation and Calibration Workload Forecasting Performance Prediction Performance Valid Cost/Performance Analysis Configuration Plan Investment Plan Personnel Plan 10

Workload Characterization Basic component: HTTP gets (99.72% of all activity) Workload partitioning criteria: file size. Clustering analysis: Minimal Spanning Tree algorithm Out of 150 clusters, top 4 account for 98% requests. Zero-length transfers: 45.76% of all requests. 11

Workload Characterization Zero-length transfers caused by: version in client cache is up to date requested file not found access violation Zero-length transfers use CPU resources and generate I/O. must take them into account! 12

Workload Characterization Class Range (Bytes) % Requests % Data Derived from 1 0 45.76 0.00 From cluster 0 2 1-4372 43.47 23.09 Remainder of cluster 0 3 4373-19284 8.78 35.41 Clusters 1, 2, and 3 4 > 19284 1.99 41.49 Remainder of clusters 10.77% of requests (classes 3 and 4) are responsible for retrieving 77% of the data. 13

Workload Characterization: Tools used for Data Collection OS: iostat: disk and CPU utilizations. Process accounting: detailed look at system activity. Web server: server access log augmented through instrumentation of Apache: PID, service time, CPU time, and system date/time. 14

Additional fields in the server access log PID: process id of the slave process handling the request. Service time: server side response time CPU time: accumulated CPU time of the request in msec (useless due to coarse granularity of CPU time recording by OS: 10 msec in our case). System date/time: system internal clock in sec. 15

Service Demands D i,r : service demand of request of class r at device i. Represents total time spent by a request of class r receiving service from device i.... Service demand 16

Computing Service Demands D i,r : service demand of request of class r at device i. Represents total time spent by a request of class r receiving service from device i. D i, r = U i, r C T r measurement interval number of class r request completed 17

Computing Service Demands U i,r is hard to measure on a production server. Need to resort to proportionality rule. 18

Computing Service Demands U i,r is hard to measure on a production server. Need to resort to proportionality rule. proportionality factor D i, r = U total device utilization i f r C T r measurement interval number of class r request completed 19

CPU Service Demands Conjecture: CPU service time is proportional to the size of the file retrieved. Developed a benchmark with files ranging from 1 MB to 10 MB in increments of 1 MB. Linear regression on results of benchmark. Y-intercept is set to be the service demand of zero-length requests (class 1). 20

CPU Service Demands results of benchmark 21

CPU Service Demands total CPU time CPU time of class 1 % of bytes for class r # of CPUs D cpu, r = ( 2 ), 1 1 U T D C b cpu cpu r C r number of class r files retrieved 22

Service Demands for Disks 1 and 2 Disk 1: OS Disk 2: HTTP log Assumption: service demand for disks 1 and 2 does not depend on file size. D disk1, r = U disk1 4 r= 1 C r T r 23

Service demand for Disk 3 Disk 3: document tree. For classes 2 to 4 use the same approach as in the CPU case. Need to compute the zero-length class service demand at disk 3. 24

Service Demand for Disk 3 Service demand for zero-length file class: developed benchmark that accessed the I-node of files over the entire file system while the utilization of disk 3 was being monitored with iostat ls -lr over 3 file systems and averaged the results D disk3, 1 = (U disk3 * T ) / C 1 25

Resulting Service Demands (in msec) 1 2 3 4 CPU 1 0.400 8.520 64.760 334.400 CPU 2 0.400 8.520 64.760 334.400 Disk1 0.740 0.740 0.740 0.740 Disk2 0.670 0.670 0.670 0.670 Disk3 1.740 1.840 13.990 72.250 In-link 0.036 0.036 0.036 0.036 Out-link 0.000 0.409 2.103 5.333 demands for outgoing link derived from file size + protocol overhead and link capacity. 26

Methodology Understanding the Environment Developing a Cost Workload Characterization Cost Cost Prediction Workload Validation and Calibration Workload Forecasting Performance Prediction Performance Valid Cost/Performance Analysis Configuration Plan Investment Plan Personnel Plan 27

Performance Open multiclass queuing network model Outgoing link CPUs Incoming link Disk 1 Disk 2 Disk 3 28

Performance Results 7.0 Avg. Response Time (sec) 6.0 5.0 4.0 3.0 2.0 1.0 CPU is the bottleneck! 0.0 90 100 110 120 Total Arrival Rate (tps) Class 1 Class 2 Class 3 Class 4 29

Methodology Understanding the Environment Developing a Cost Workload Characterization Cost Cost Prediction Workload Validation and Calibration Workload Forecasting Performance Prediction Performance Valid Cost/Performance Analysis Configuration Plan Investment Plan Personnel Plan 30

Performance Validation and Calibration First response time comparison seemed wildly inaccurate. Closer look at server operation uncovered a cron job that ran every hour to gather usage statistics by reading the entire access log file. By the end of the month, the access log was 1.5 GB long and the cron job took 45 minutes each hour! 31

Performance Validation and Calibration The cron job was scheduled to run only once a week during off-peak periods. Maximum percent absolute error in utilization dropped to 6.5%. 32

Performance Validation and Calibration The cron job was scheduled to run only once a week during off-peak periods. Maximum percent absolute error in utilization dropped to 6.5%. Response time varied widely from 0.5 sec to 60 sec for the same file size. Causes: network slowness, timeouts, and slow modem speeds at the client. Response time is only recorded in the HTTP log when the entire file has been sent. 33

Methodology Understanding the Environment Developing a Cost Workload Characterization Cost Cost Prediction Workload Validation and Calibration Workload Forecasting Performance Prediction Performance Valid Cost/Performance Analysis Configuration Plan Investment Plan Personnel Plan 34

Performance that Incorporates Client Access Speed Multiclass mixed-class queuing network model Browser Client access link Internet Outgoing link Incoming link from/to other sources same four classes as in open model CPUs Disk 1 Disk 2 Disk 3 35

Results of Performance that Incorporates Client Access Speed 10.0 9.0 8.0 9.51 8.39 Class 4 120 tps RTT = 0.2 sec Response Time (sec) 7.0 6.0 5.0 4.0 3.0 6.77 6.70 2.0 1.0 0.0 33,600 56,000 1,250,000 100,000,000 Client access speed (bps) 36

Verifying Maximum Throughput Used InetLoad benchmark tool to drive server to maximum capacity. InetLoad script was derived by processing the HTTP log to preserve the bursty characteristics of the arrival process. 37

Burtsy Nature of the Workload maximum measured throughput was 131 requests/sec, 9.2% above the maximum throughput of 120 request/sec predicted by the model. 38

Methodology Understanding the Environment Developing a Cost Workload Characterization Cost Cost Prediction Workload Validation and Calibration Workload Forecasting Performance Prediction Performance Valid Cost/Performance Analysis Configuration Plan Investment Plan Personnel Plan 39

Answering What-if Questions The university was considering moving the Web server to a machine with RAID disks and two slightly slower processors. Our recommendation: use faster processors (250 MHz as opposed to the 168 MHz ones). predictions: response time for class 4 went down to 0.592 sec from 6.6 sec and the maximum throughput increased 52%. 40

Concluding Remarks Major challenges in conducting a capacity planning study are: devising a sound data collection procedure to obtain parameters for the performance model validating the model This study showed importance of client access speeds in modeling server side response time. 41

Bibliography Capacity Planning for Web Performance: metrics, models, and methods, D. Menascé and V. Almeida, Prentice Hall, 1998. Capacity Planning and Performance ing: from mainframes to client-server systems, D. Menascé, V. Almeida, and L. Dowdy, Prentice Hall, 1994. 42