Performance Workload Design
|
|
|
- Anna Lee
- 10 years ago
- Views:
Transcription
1 Performance Workload Design The goal of this paper is to show the basic principles involved in designing a workload for performance and scalability testing. We will understand how to achieve these principles in practice. We will design a simple workload to understand the performance and scalability characteristics of a web application. Our sample web application is a website consisting of 3 pages. This paper walks through the steps for designing a workload for this application. Why Design? Before we talk about a good workload design, first let's tackle the question of why this is important. The many load testing tools out there make light of the design process. They make claims of how easy it is to create a load test by simply clicking through a web application which is recorded and the steps played back. Throw hundreds or thousands of emulated users running that same scenario and presto - you have a workload. Of course, this method only works for web applications and even in this case there are problems with this method that are a subject of a separate Record and Playback article. The important thing to keep in mind is that test results are only as good as the tests that are used. Software bugs are often the result of poor QA. As QA tests improve their coverage, the bugs in the application will correspondingly decrease. Workloads are "QA tests" for performance. The better the workloads, the more valuable they are in measuring and analyzing performance problems. There are several reasons why one would want to ensure a workload is well-designed: The workload helps in performance and scalability tests to understand bottlenecks. The workload can be used for capacity planning and sizing purposes. The workload resembles the real load on the production application thus helping better optimize the application infrastructure. We will see how a workload can achieve these goals. Definitions Before we go further, let us first define some common terms. Workload: The amount of work a system has to perform in a given time. In the performance field, a workload usually refers to the combined load placed on an application by the set of clients it services. Benchmark: A specific workload when applied to a target application that can be standardized. A benchmark usually implies rigorous rules to ensure that results are meaningful and comparable. Scalability: The ability of a system to continue to perform well as load is increased. Scalability is crucial for websites as they have to deal with constantly changing load and may have to handle peak loads that are several times the average. SUT: The System Under Test (commonly referred to as SUT) is the entire infrastructure that is required to host the application being tested. For example, a typical SUT for a web application will include systems for proxy, web, application and database servers and the corresponding software infrastructure and applications running on them. Load Generator or Driver: A Load Generator or Driver is a program that controls the workload submission to the SUT. Operation: An Operation is a logical unit of work initiated by the Load Generator or Driver. An operation may consist of multiple request/response cycles between the Driver and the SUT (e.g a request for a web page with multiple embedded objects can constitute an operation). A mix of operations constitutes a workload. The term Transaction is also often used, especially for
2 database-related workloads. Workload Design Principles A well-designed workload should have the following characteristics : 1. Predictability The behavior of the system while running the workload, should be predictable. This means that one should be able to determine how the workload processes requests and accesses data. This helps in analyzing performance. Predictability does not mean that the workload should perform the exact same actions in the same sequence every time (i.e. has no randomness), nor that there should be no variation over time. The graph in Figure 1 below shows processor utilization of a system running a well designed workload. As can be seen, the workload varies over time but is predictable. Figure 1: CPU Utilization Over Time 2. Repeatability It is important that a workload produces repeatable results. If the workload is run several times in an identical fashion, it should produce results that are almost identical. Without this repeatability, performance analysis becomes difficult. 3.Scalability A workload should be able to place different levels of load in order to test the scalability of the target application and infrastructure. A workload that can only generate a fixed load or one that scales in an haphazard fashion that does not resemble actual scaling in production is not very useful. Workload Design Steps Listed below are the steps we will follow to design our example workload : 1. Design the application 2. Define the metrics
3 3. Design the load 4. Define scaling rules 5. Design the load generator 1. Design the application This step may sound confusing - after all, the whole purpose of performance testing is to test an already existing application (or one in development before it goes live). So let's clarify what is involved in this activity. a) Define the actors and use cases. The use cases help define the operations of the workload. In a complex workload, the different actors may have different use cases e.g. a salesperson entering an order and an accountant generating a report. For our sample workload, we have a single type of actor, the user of the website and we have 3 use cases, namely a request for the 3 web pages. b) Define the operations. In the simplest case (as in our example), each use case will map to an operation. It is important to keep the following things in mind while defining operations : For a workload to be useful, the number of operations should be kept small (6-8). Too many operations can make the workload not only difficult to construct and manage, but also less useful for understanding performance. It is not necessary to simulate every single use case, but rather focus on the use cases that are most likely to occur. The lower frequency ones can be ignored or combined with others into a single operation. If the application being tested is complex with multiple use cases for distinct actors, consider grouping the use cases that are likely to occur together and create separate workloads for each group. 2. Define the Metrics In this step, we define what the workload should measure. Typical metrics include throughput, response time or number of users. However, depending on the workload, other metrics such as processor or memory utilization, i/o rates, or some other application specific metrics may make sense. Although throughput and response times are common metrics, there are several ways in which these can be defined. Throughput A throughput metric measures how many operations can be processed by the SUT during a unit of time. A throughput metric can be computed using several methods : For a single workload driving all operations, throughput (X), can be calculated by keeping a count (N) of all the operations executed during a certain amount of time (T) as X = N / T. This is the simplest method. Use a single operation type that contributes to the throughput metric. Although all other operations will execute, they are not counted. This method should be used when the amount of work performed by the different operation types varies considerably or one particular operation is dominant. [TPCC] uses this method. Use a geometric mean of all different operation types. The geometric mean weights all operations equally - relative changes in short running operations have just as much effect as in long running operations. This is the recommended method if there are multiple workloads that may not directly relate to each other and a single metric is desired. [SPCP00] uses this method. If multiple workloads are involved, an arithmetic mean of the throughput of all the workloads can be used if the throughputs of the different workloads are related in some manner. [SPR02] used this method.
4 For our example, we will choose a throughput metric of the number of web requests processed per second computed as the total number of requests processed divided by the time interval in seconds. Response Times In most cases, a throughput metric is not very meaningful without a corresponding response time requirement or metric. The term Response Time is typically defined as the time interval between the last byte of an operation request sent to the SUT and the first byte of the response. This definition measures the response time of the SUT. In some cases it may be desirable to define response time as the time interval between when the emulated user sends the request and receives the response. In this case, the response time will include the client-side protocol stack. For example, if the request is a https request, the time taken by client to encrypt the request, decrypt the response etc. will be included. Response Time metrics are usually specified in terms of average (mean) and 90 th percentile requirements. Although, the average response time is a common measure, it may be insufficient in many cases. This is because there can be wide fluctuations in response times (ranging from 100 ms to 5000 ms say) and yet the avg. response time requirements may still be satisfied. By requiring that 90% of operations complete within a specified interval, we are assured of a more stable system. The average response time should not be greater than the 90% response time. This ensures that we do not have excessively long outlying operations. In certain cases where performance is of utmost importance, it may be required to specify a 99 th percentile response time requirement. How does one decide what the response time requirement should be? For certain applications, the end-user SLA may dictate the requirements. For others, especially web applications, extremely low response times (less than a second or two) may be critical to attract and maintain customers. Operations that involve actual user interactions should typically be less than a few seconds whereas a complex batch job may take hours to complete. The response time requirements may have to be finalized after the workload is constructed and sample runs performed. For our example workload, we define the 90 th percentile response time for all operations to be less than 100 ms. 3. Design the Load This is the most important step in workload design. The relevance of the workload will depend on how closely it emulates the application load in production. At the same time, it is important to realize that a test workload should only capture the most significant aspects of the live load otherwise, it can get complicated and not be a very useful performance tool. Load definition means defining the manner in which the different operations defined in Step 2 load the SUT. This involves deciding on the operation mix, mechanisms to generate data for the requests, and deciding on arrival rates or think times. Arrival Rates The rate at which requests are submitted to the SUT is called the arrival rate and the time between requests is known as the inter-arrival time. Arrival rates are used in open systems where the user population is large and unknown, as for example, in web applications. Arrival rates are typically modeled using a negative exponential distribution [TRIV82] that are truncated at some
5 reasonable value, say 5 times the mean. For our example workload, we define an inter-arrival time of 1 second with a negative exponential distribution truncating at 10 seconds. Think Times In benchmarks that model applications involving direct user interaction, it may make sense to model think times instead of arrival rates, the idea being that the user takes some time to respond to what is being presented to him. Think times can vary based on the type of operation. If an operation presents lots of data, it might take the user more time to respond. Think times are also typically modeled using a negative exponential distribution with some targeted mean. The distribution is truncated at a fairly large value, say 5-10 times the mean. Operation Mix We need to decide on the frequency with which each of the operations will be exercised, the goal being to execute operations that test most frequently used code paths. This is often expressed as a operation mix% for each type of operation, the total adding up to 100%. The mix for any one type of operation should not be very small (say < 1%) as it may require a large number of samples to achieve that probability. Mixes can be specified in different ways : Flat Mix: The flat mix is the simplest and is used when the operations are independent of each other and each operation has the same probability of occurrence. The mix selects one of the operations at random. Flat Sequence Mix: This mix specifies a set of a sequence of operations. For example, one set could be the sequence {operation1, operation2} and another could be {operation1, operation3} with a probability assigned to each set. This is often referred to as scenarios. Matrix Mix: Also called a Transition Mix, this mix describes the transition probabilities in a Morkov model [Menascè04] as a right stochastic matrix. This must be a square matrix. Each row represents a probability vector for transitioning from an operation (row operations index) to an operation (column operations index). Most web applications would typically use a matrix mix as transitions between various pages can be represented by a state diagram. For our example workload, we choose a matrix mix with the following probabilities : From To To To Page 1 Page 2 Page 3 Page % 80.00% 20.00% Page % 39.00% 41.00% Page % 19.00% 21.00% Operation Data Depending on the operation, various pieces of data may have to be generated as input to the request. It is essential to vary the data used in order to test realistic scenarios and also vary the load on the SUT. For example, if an operation accesses a varying number of items ranging from [1..100], it is a good idea to test the entire range instead of always selecting a fixed number of items. It is also good practice to inject a small number of errors by using invalid data as input to
6 the operations. This may catch performance problems in error handling. Generating data can be problematic. If tests are to be conducted on a copy of the production data set, then the workload developer must know the possible values for all of the input fields. For large data sets, this can become unwieldy and a great deal of energy may be spent in extracting the data, loading the data into the test harness, ensure it's accuracy etc. Another approach is to use synthetic data. By using algorithms to generate the initial data in the database as well as data generated by the workload, it is easier to keep things in sync and at the same time test interesting scenarios. The most common method of generating synthetic data is by the use of random number generators. Random number generators can be used effectively to simulate various types of access patterns, either uniform or non-uniform random. A rule of thumb: Any time a random number is generated, it should be selected from a distribution. Uniform Random This is the most commonly used method of generating random data. A piece of data is selected at random from a uniform distribution with a given mean. Operating systems and languages provide support for various random number generators. However, these not only vary in quality and performance, but also in the randomness of the data they provide. Some good random number generators are available in [PARK88] and [MARS91]. Non-uniform Random In the real world, data access is usually not uniform. Enterprises don't have all customers ordering the same number of items and typically some items are more popular than others. Many applications rely on such non-uniform accesses to cache data that is heavily used. In order to test the performance of caching algorithms and emulate real use cases, it may be important for a workload to simulate such non-uniform access. A well known non-uniform random number algorithm is specified by the Transaction Processing Council as : NURand(A, x, y) = ((random(0,a) random(x,y)) % (y x + 1)) + x where : A is a constant chosen according to the size of the range [x..y]. The value chosen for A determines the frequency of the hotspots and as such it is a good idea to model this function and understand its characteristics. See [TPCC] to understand how it uses this to generate non-uniform data. 4. Define Scaling Rules Complex workloads need a means to scale the workload depending on the actual hardware they are deployed on. Often times, scaling is done by increasing (or decreasing) the number of emulated users. Although this will cause the load on the SUT to change, scaling the load often needs to go way beyond that. Linear Scaling In this model, everything is scaled in a linear fashion. If the workload simulates users performing operations that access data, then the number of users and the amount of data accessed are both scaled, usually using a single scaling factor or rate. The advantage to this model is that it provides a means of predicting performance and scalability (assuming that the SUT exhibits stable, scalable
7 behavior). This type of scaling especially makes sense, if the workload is to be used for sizing purposes. It also represents many real-world situations. However, note that even though load may be added linearly, there may actually be non-linear increases in the work performed by the SUT, limiting system scalability. This could be due to increased contention for various resources resulting in serialization on mutexes, etc. There are many instances when all the data is not scaled by the same scale factor. Consider an online store that sells x different products and has y customers. As business grows and the number of customers increase, the types of products sold by the store will increase at a much lower rate. A website that aggregates news from several different news feeds will see growth as the number of customers it serves increase, requiring it to perhaps fetch more/different categories of news, but the number of news feeds remains constant. If a workload is crafted carefully, it is possible to scale various parts of the data store at different rates and yet retain its usefulness to measure system scalability. [SPECj04] is an example of a workload that uses multiple scale factors. Example: Our sample workload scales by a rate called S r. The number of emulated clients is S r. Non-linear Scaling Although linearly scaling the benchmark makes it easier for performance analysis work, in the real world many applications scale non-linearly. Consider for example, a typical web2.0 site that allows users to tag various things. When the site is small, it will have a small number of users and a certain number of tags. As the number of users and activity increases, the number of tags does not grow linearly. At some point, the number of tags may remain constant. Such complex scaling is more difficult to model in a workload. For a realistic simulation and especially if the workload is being developed for sizing purposes, it is important to model realistic, non-linear scaling behavior. An example of such a workload can be found in [OLIO]. 5. Design the Load Generator The Load Generator or Driver implements the workload and keeps track of various performance metrics such as response times, think times and throughput. Several off-the-shelf tools are available to automate the load generation task and/or assist in developing them. Tools vary greatly in their functionality so a tool should be carefully evaluated to ensure it can generate the defined workload. Some points to keep in mind : If the driver is emulating multiple user connections, it is important to ensure that each emulated user has a unique connection to the SUT (http, tcp or other type of connection). No pooling of connections should occur on the driver side. Each emulated user should use its own random number generator, seeded with a unique value. This ensures the randomness of the generated data. Current time should be gathered using the most efficient and accurate method possible. This is especially important when latencies are small (in micro or milli seconds). When the emulated user goes to sleep to emulate think times, it is important to calibrate the sleep times as there may be delays in the operating environment's scheduling of the wake up of the driver thread. The driver must have good performance and be scalable i.e. the driver should not become the bottleneck! It is a good idea to monitor the driver system(s) while doing the test runs.
8 7. Other Considerations Initial Data Store Many servers and applications access some sort of data store, one backed by a file system, RDBMS, LDAP server or some other type of database. When designing a workload in which a data store is involved, due consideration must be given to both the initial state of this store and its state after a test run. For example, if the load needs to be run for 8 hours, the rate at which the data grows should not be such that the test configuration becomes unmanageable. Even if the workload being created only tests new records being inserted into the store, it may be important to pre-load data, as the performance of the insertions may depend on how many records already exist and the way the data is organized. If the application performs a search on the data store based on certain value(s) in some fields, then it is important to load these fields in a manner consistent with the expected results. Workload Model While designing the workload, it is useful to build a model detailing the various metrics, data sizes, access patterns etc. using a spreadsheet. This helps in understanding data sizing issues (e.g. how much will the data grow if the load is run for 24 hours vs. 8 hours). Adjustments to various parameters such as operation mixes, arrival rates etc. can be easily tried out to evaluate their effects. The model can also be used later during performance analysis to correlate measured data with what is expected. Test Harness Once the workload is designed and implemented, how do we use it for performance testing? This is where a Harness comes in. Most load generator tools usually also include a harness to manage test execution. Again, functionality can vary greatly. The harness should minimally provide the following functionality: Run management. Queue, execute, view status and kill runs. Collect configuration information of the various products used. Automate running of various monitoring tools during a run. Provide a means to easily view and compare results of past runs. Conclusion Accurate construction of workloads is the first step in understanding performance issues. This paper highlights a methodical, step by step approach to workload development. There are many complex questions that must be answered when designing a workload. We have covered the most important issues that are applicable to a wide variety of workloads such as throughput and response time metrics, arrival rates, think times, data generation, data store sizing and workload scaling. References [TPCC] TPC Benchmark C, pp:28, 21, 74 [SPCP00] SPECCPU 2000 Run Rules
9 [SPR02] SPECjAppServer2002 Run Rules [TRIV82] Kishor Shridharbhai Trivedi, "Probability & Statistics with Reliability, Queueing, and Computer Science Applications," pp (1982). [Menascè04] Daniel A. Menascè, Performance by Design, pp (2004). [PARK88] S.K. Park and K.W. Miller, "Random Number Generators: Good Ones Are Hard To Find", Communications of the ACM, pp (October 1988) [MARS91] George Marsaglia and Arif Zaman, "Toward a Universal Random Number Generator", Annals of Applied Probability, no. 3, vol. 3, pp (1991). [SPECj04] SPECjAppServer2004 Database Scaling Rules [OLIO] A Web2.0 Toolkit and benchmark, All Rights Reserved. See Terms and Conditions.
Application. Performance Testing
Application Performance Testing www.mohandespishegan.com شرکت مهندش پیشگان آزمون افسار یاش Performance Testing March 2015 1 TOC Software performance engineering Performance testing terminology Performance
Recommendations for Performance Benchmarking
Recommendations for Performance Benchmarking Shikhar Puri Abstract Performance benchmarking of applications is increasingly becoming essential before deployment. This paper covers recommendations and best
Application Performance Testing Basics
Application Performance Testing Basics ABSTRACT Todays the web is playing a critical role in all the business domains such as entertainment, finance, healthcare etc. It is much important to ensure hassle-free
TPC-W * : Benchmarking An Ecommerce Solution By Wayne D. Smith, Intel Corporation Revision 1.2
TPC-W * : Benchmarking An Ecommerce Solution By Wayne D. Smith, Intel Corporation Revision 1.2 1 INTRODUCTION How does one determine server performance and price/performance for an Internet commerce, Ecommerce,
Performance And Scalability In Oracle9i And SQL Server 2000
Performance And Scalability In Oracle9i And SQL Server 2000 Presented By : Phathisile Sibanda Supervisor : John Ebden 1 Presentation Overview Project Objectives Motivation -Why performance & Scalability
Performance Testing Process A Whitepaper
Process A Whitepaper Copyright 2006. Technologies Pvt. Ltd. All Rights Reserved. is a registered trademark of, Inc. All other trademarks are owned by the respective owners. Proprietary Table of Contents
IBM RATIONAL PERFORMANCE TESTER
IBM RATIONAL PERFORMANCE TESTER Today, a major portion of newly developed enterprise applications is based on Internet connectivity of a geographically distributed work force that all need on-line access
Everything you need to know about flash storage performance
Everything you need to know about flash storage performance The unique characteristics of flash make performance validation testing immensely challenging and critically important; follow these best practices
Mike Chyi, Micro Focus Solution Consultant May 12, 2010
Mike Chyi, Micro Focus Solution Consultant May 12, 2010 Agenda Load Testing Overview, Best Practice: Performance Testing with Diagnostics Demo (?), Q&A Load Testing Overview What is load testing? Type
How To Test For Performance
: Roles, Activities, and QA Inclusion Michael Lawler NueVista Group 1 Today s Agenda Outline the components of a performance test and considerations Discuss various roles, tasks, and activities Review
Redis OLTP (Transactional) Load Testing
Redis OLTP (Transactional) Load Testing The document Introduction to Transactional (OLTP) Load Testing for all Databases provides a general overview on the HammerDB OLTP workload and should be read prior
Enterprise Application Performance Management: An End-to-End Perspective
SETLabs Briefings VOL 4 NO 2 Oct - Dec 2006 Enterprise Application Performance Management: An End-to-End Perspective By Vishy Narayan With rapidly evolving technology, continued improvements in performance
Delivering Quality in Software Performance and Scalability Testing
Delivering Quality in Software Performance and Scalability Testing Abstract Khun Ban, Robert Scott, Kingsum Chow, and Huijun Yan Software and Services Group, Intel Corporation {khun.ban, robert.l.scott,
How To Test A Web Server
Performance and Load Testing Part 1 Performance & Load Testing Basics Performance & Load Testing Basics Introduction to Performance Testing Difference between Performance, Load and Stress Testing Why Performance
Performance Testing. Why is important? An introduction. Why is important? Delivering Excellence in Software Engineering
Delivering Excellence in Software Engineering Performance Testing An introduction. Why is important? Why is important? 2 1 https://www.youtube.com/watch?v=8y8vqjqbqdc 3 4 2 Introduction Why is important?
Rapid Bottleneck Identification
Rapid Bottleneck Identification TM A Better Way to Load Test WHITEPAPER You re getting ready to launch or upgrade a critical Web application. Quality is crucial, but time is short. How can you make the
Table of Contents INTRODUCTION... 3. Prerequisites... 3 Audience... 3 Report Metrics... 3
Table of Contents INTRODUCTION... 3 Prerequisites... 3 Audience... 3 Report Metrics... 3 IS MY TEST CONFIGURATION (DURATION / ITERATIONS SETTING ) APPROPRIATE?... 4 Request / Response Status Summary...
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
Presentation P R E S E N T A T I O N Bio E6 Thursday, March 8, 2001 11:30 AM HOW TO EVALUATE AND SELECT A HIGH-END LOAD TESTING TOOL Marquis Harding Reality Test International Conference On Software Test
Developing a Load Testing Strategy
Developing a Load Testing Strategy Michele Ruel St.George Bank CMGA 2005 Page 1 Overview... 3 What is load testing?... 4 Scalability Test... 4 Sustainability/Soak Test... 4 Comparison Test... 4 Worst Case...
Test Run Analysis Interpretation (AI) Made Easy with OpenLoad
Test Run Analysis Interpretation (AI) Made Easy with OpenLoad OpenDemand Systems, Inc. Abstract / Executive Summary As Web applications and services become more complex, it becomes increasingly difficult
How To Test For Performance And Scalability On A Server With A Multi-Core Computer (For A Large Server)
Scalability Results Select the right hardware configuration for your organization to optimize performance Table of Contents Introduction... 1 Scalability... 2 Definition... 2 CPU and Memory Usage... 2
Bringing Value to the Organization with Performance Testing
Bringing Value to the Organization with Performance Testing Michael Lawler NueVista Group 1 Today s Agenda Explore the benefits of a properly performed performance test Understand the basic elements of
Virtuoso and Database Scalability
Virtuoso and Database Scalability By Orri Erling Table of Contents Abstract Metrics Results Transaction Throughput Initializing 40 warehouses Serial Read Test Conditions Analysis Working Set Effect of
Scalability Factors of JMeter In Performance Testing Projects
Scalability Factors of JMeter In Performance Testing Projects Title Scalability Factors for JMeter In Performance Testing Projects Conference STEP-IN Conference Performance Testing 2008, PUNE Author(s)
Keywords: Dynamic Load Balancing, Process Migration, Load Indices, Threshold Level, Response Time, Process Age.
Volume 3, Issue 10, October 2013 ISSN: 2277 128X International Journal of Advanced Research in Computer Science and Software Engineering Research Paper Available online at: www.ijarcsse.com Load Measurement
Web Application s Performance Testing
Web Application s Performance Testing B. Election Reddy (07305054) Guided by N. L. Sarda April 13, 2008 1 Contents 1 Introduction 4 2 Objectives 4 3 Performance Indicators 5 4 Types of Performance Testing
A STUDY OF WORKLOAD CHARACTERIZATION IN WEB BENCHMARKING TOOLS FOR WEB SERVER CLUSTERS
382 A STUDY OF WORKLOAD CHARACTERIZATION IN WEB BENCHMARKING TOOLS FOR WEB SERVER CLUSTERS Syed Mutahar Aaqib 1, Lalitsen Sharma 2 1 Research Scholar, 2 Associate Professor University of Jammu, India Abstract:
Performance Prediction, Sizing and Capacity Planning for Distributed E-Commerce Applications
Performance Prediction, Sizing and Capacity Planning for Distributed E-Commerce Applications by Samuel D. Kounev ([email protected]) Information Technology Transfer Office Abstract Modern e-commerce
Holistic Performance Analysis of J2EE Applications
Holistic Performance Analysis of J2EE Applications By Madhu Tanikella In order to identify and resolve performance problems of enterprise Java Applications and reduce the time-to-market, performance analysis
There are a number of factors that increase the risk of performance problems in complex computer and software systems, such as e-commerce systems.
ASSURING PERFORMANCE IN E-COMMERCE SYSTEMS Dr. John Murphy Abstract Performance Assurance is a methodology that, when applied during the design and development cycle, will greatly increase the chances
Performance Modeling and Analysis of a Database Server with Write-Heavy Workload
Performance Modeling and Analysis of a Database Server with Write-Heavy Workload Manfred Dellkrantz, Maria Kihl 2, and Anders Robertsson Department of Automatic Control, Lund University 2 Department of
Business Application Services Testing
Business Application Services Testing Curriculum Structure Course name Duration(days) Express 2 Testing Concept and methodologies 3 Introduction to Performance Testing 3 Web Testing 2 QTP 5 SQL 5 Load
Performance Testing Process
Delivering Excellence in Software Engineering Performance Testing An introduction. 1 2 3 4 5 6 Introduction Performance Testing Process Performance Test Types Tools JMeter Questions 2 1 Introduction This
Capacity Planning Process Estimating the load Initial configuration
Capacity Planning Any data warehouse solution will grow over time, sometimes quite dramatically. It is essential that the components of the solution (hardware, software, and database) are capable of supporting
IBM SAP International Competence Center. Load testing SAP ABAP Web Dynpro applications with IBM Rational Performance Tester
IBM SAP International Competence Center Load testing SAP ABAP Web Dynpro applications with IBM Rational Performance Tester Ease of use, excellent technical support from the IBM Rational team and, of course,
Web Load Stress Testing
Web Load Stress Testing Overview A Web load stress test is a diagnostic tool that helps predict how a website will respond to various traffic levels. This test can answer critical questions such as: How
On Correlating Performance Metrics
On Correlating Performance Metrics Yiping Ding and Chris Thornley BMC Software, Inc. Kenneth Newman BMC Software, Inc. University of Massachusetts, Boston Performance metrics and their measurements are
Performance Testing of a Large Wealth Management Product
Performance Testing of a Large Wealth Management Product Meherphani Nori & Global Head Quality Assurance Krishna Kankipati & Vice President Mohan Pujari & Product Specialist Broadridge Financial Solutions
Performance and Load Testing For ArcGIS based systems Ian Sims and John Meza OVERVIEW What is Performance and Load Testing What is the objective Acceptance Testing Ongoing Development Areyoutheclient Want
WHAT WE NEED TO START THE PERFORMANCE TESTING?
ABSTRACT Crystal clear requirements before starting an activity are always helpful in achieving the desired goals. Achieving desired results are quite difficult when there is vague or incomplete information
PART IV Performance oriented design, Performance testing, Performance tuning & Performance solutions. Outline. Performance oriented design
PART IV Performance oriented design, Performance testing, Performance tuning & Performance solutions Slide 1 Outline Principles for performance oriented design Performance testing Performance tuning General
1 How to Monitor Performance
1 How to Monitor Performance Contents 1.1. Introduction... 1 1.1.1. Purpose of this How To... 1 1.1.2. Target Audience... 1 1.2. Performance - some theory... 1 1.3. Performance - basic rules... 3 1.4.
Performance Testing of Java Enterprise Systems
Performance Testing of Java Enterprise Systems Katerina Antonova, Plamen Koychev Musala Soft Why Performance Testing? Recent studies by leading USA consultancy companies showed that over 80% of large corporations
Performance Testing for BMC Remedy IT Service Management Suite
Test and Performance Platform Stress Testing Load Testing Capacity Test Soak Testing Scalability Testing Performance Testing Benchmarking Reliability Testing Performance Tuning Performance Optimization
How To Test On The Dsms Application
Performance Test Summary Report Skills Development Management System December 2014 Performance Test report submitted to National Skill Development Corporation Version Date Name Summary of Changes 1.0 22/12/2014
Datasheet iscsi Protocol
Protocol with DCB PROTOCOL PACKAGE Industry s premiere validation system for SAN technologies Overview Load DynamiX offers SCSI over TCP/IP transport () support to its existing powerful suite of file,
Rapid Bottleneck Identification A Better Way to do Load Testing. An Oracle White Paper June 2009
Rapid Bottleneck Identification A Better Way to do Load Testing An Oracle White Paper June 2009 Rapid Bottleneck Identification A Better Way to do Load Testing. RBI combines a comprehensive understanding
Rackspace Cloud Databases and Container-based Virtualization
Rackspace Cloud Databases and Container-based Virtualization August 2012 J.R. Arredondo @jrarredondo Page 1 of 6 INTRODUCTION When Rackspace set out to build the Cloud Databases product, we asked many
Beyond the Basics: Making the Most of Oracle Enterprise Manager 12c Monitoring
Beyond the Basics: Making the Most of Oracle Enterprise Manager 12c Monitoring Ana McCollum Director of Product Management Oracle Enterprise Manager September 29, 2014 Safe Harbor Statement The following
Transforming LoadRunner Data into Information and Action
2010-02-01 Transforming LoadRunner Data into Information and Action Introduction Today s online web applications need to deliver high efficiency and stability while supporting thousands of users simultaneously.
Service Virtualization:
Service Virtualization: Reduce the time and cost to develop and test modern, composite applications Business white paper Table of contents Why you need service virtualization 3 The challenges of composite
TRACE PERFORMANCE TESTING APPROACH. Overview. Approach. Flow. Attributes
TRACE PERFORMANCE TESTING APPROACH Overview Approach Flow Attributes INTRODUCTION Software Testing Testing is not just finding out the defects. Testing is not just seeing the requirements are satisfied.
An Oracle White Paper February 2010. Rapid Bottleneck Identification - A Better Way to do Load Testing
An Oracle White Paper February 2010 Rapid Bottleneck Identification - A Better Way to do Load Testing Introduction You re ready to launch a critical Web application. Ensuring good application performance
Throughput Capacity Planning and Application Saturation
Throughput Capacity Planning and Application Saturation Alfred J. Barchi [email protected] http://www.ajbinc.net/ Introduction Applications have a tendency to be used more heavily by users over time, as the
ZooKeeper. Table of contents
by Table of contents 1 ZooKeeper: A Distributed Coordination Service for Distributed Applications... 2 1.1 Design Goals...2 1.2 Data model and the hierarchical namespace...3 1.3 Nodes and ephemeral nodes...
Sensitivity Analysis and Patterns Implementation on Load Testing Software Systems
Sensitivity Analysis and Patterns Implementation on Load Testing Software Systems Alexandra Nagy*, George Sebastian Chiş Babeş-Bolyai University, Faculty of Economics and Business Administration, Computer
Microsoft SQL Server OLTP (Transactional) Load Testing
Microsoft SQL Server OLTP (Transactional) Load Testing The document Introduction to Transactional (OLTP) Load Testing for all Databases provides a general overview on the HammerDB OLTP workload and should
Introducing Performance Engineering by means of Tools and Practical Exercises
Introducing Performance Engineering by means of Tools and Practical Exercises Alexander Ufimtsev, Trevor Parsons, Lucian M. Patcas, John Murphy and Liam Murphy Performance Engineering Laboratory, School
Benchmarking the Performance of XenDesktop Virtual DeskTop Infrastructure (VDI) Platform
Benchmarking the Performance of XenDesktop Virtual DeskTop Infrastructure (VDI) Platform Shie-Yuan Wang Department of Computer Science National Chiao Tung University, Taiwan Email: [email protected]
Data Warehouse and Business Intelligence Testing: Challenges, Best Practices & the Solution
Warehouse and Business Intelligence : Challenges, Best Practices & the Solution Prepared by datagaps http://www.datagaps.com http://www.youtube.com/datagaps http://www.twitter.com/datagaps Contact [email protected]
Portable Scale-Out Benchmarks for MySQL. MySQL User Conference 2008 Robert Hodges CTO Continuent, Inc.
Portable Scale-Out Benchmarks for MySQL MySQL User Conference 2008 Robert Hodges CTO Continuent, Inc. Continuent 2008 Agenda / Introductions / Scale-Out Review / Bristlecone Performance Testing Tools /
1. Comments on reviews a. Need to avoid just summarizing web page asks you for:
1. Comments on reviews a. Need to avoid just summarizing web page asks you for: i. A one or two sentence summary of the paper ii. A description of the problem they were trying to solve iii. A summary of
Monitoring the Real End User Experience
An AppDynamics Business White Paper HOW MUCH REVENUE DOES IT GENERATE? Monitoring the Real End User Experience Web application performance is fundamentally associated in the mind of the end user; with
Job Reference Guide. SLAMD Distributed Load Generation Engine. Version 1.8.2
Job Reference Guide SLAMD Distributed Load Generation Engine Version 1.8.2 June 2004 Contents 1. Introduction...3 2. The Utility Jobs...4 3. The LDAP Search Jobs...11 4. The LDAP Authentication Jobs...22
Marketing Mix Modelling and Big Data P. M Cain
1) Introduction Marketing Mix Modelling and Big Data P. M Cain Big data is generally defined in terms of the volume and variety of structured and unstructured information. Whereas structured data is stored
White Paper. Recording Server Virtualization
White Paper Recording Server Virtualization Prepared by: Mike Sherwood, Senior Solutions Engineer Milestone Systems 23 March 2011 Table of Contents Introduction... 3 Target audience and white paper purpose...
The Methodology Behind the Dell SQL Server Advisor Tool
The Methodology Behind the Dell SQL Server Advisor Tool Database Solutions Engineering By Phani MV Dell Product Group October 2009 Executive Summary The Dell SQL Server Advisor is intended to perform capacity
Benchmarking Cassandra on Violin
Technical White Paper Report Technical Report Benchmarking Cassandra on Violin Accelerating Cassandra Performance and Reducing Read Latency With Violin Memory Flash-based Storage Arrays Version 1.0 Abstract
CS 147: Computer Systems Performance Analysis
CS 147: Computer Systems Performance Analysis CS 147: Computer Systems Performance Analysis 1 / 39 Overview Overview Overview What is a Workload? Instruction Workloads Synthetic Workloads Exercisers and
BW-EML SAP Standard Application Benchmark
BW-EML SAP Standard Application Benchmark Heiko Gerwens and Tobias Kutning (&) SAP SE, Walldorf, Germany [email protected] Abstract. The focus of this presentation is on the latest addition to the
Load/Stress Test Plan
WileyPLUS E5 Load/Stress Test Plan Version 1.1 Author: Cris J. Holdorph Unicon, Inc. 1 Audit Trail: Date Version Name Comment April 2, 2008 1.0 Cris J. Holdorph Initial Revision April 9, 2008 1.1 Cris
bbc Adobe LiveCycle Data Services Using the F5 BIG-IP LTM Introduction APPLIES TO CONTENTS
TECHNICAL ARTICLE Adobe LiveCycle Data Services Using the F5 BIG-IP LTM Introduction APPLIES TO Adobe LiveCycle Enterprise Suite CONTENTS Introduction................................. 1 Edge server architecture......................
AN EFFICIENT LOAD BALANCING ALGORITHM FOR A DISTRIBUTED COMPUTER SYSTEM. Dr. T.Ravichandran, B.E (ECE), M.E(CSE), Ph.D., MISTE.,
AN EFFICIENT LOAD BALANCING ALGORITHM FOR A DISTRIBUTED COMPUTER SYSTEM K.Kungumaraj, M.Sc., B.L.I.S., M.Phil., Research Scholar, Principal, Karpagam University, Hindusthan Institute of Technology, Coimbatore
Web Server Software Architectures
Web Server Software Architectures Author: Daniel A. Menascé Presenter: Noshaba Bakht Web Site performance and scalability 1.workload characteristics. 2.security mechanisms. 3. Web cluster architectures.
VirtualCenter Database Performance for Microsoft SQL Server 2005 VirtualCenter 2.5
Performance Study VirtualCenter Database Performance for Microsoft SQL Server 2005 VirtualCenter 2.5 VMware VirtualCenter uses a database to store metadata on the state of a VMware Infrastructure environment.
Performance TesTing expertise in case studies a Q & ing T es T
testing & QA Performance Testing Expertise in Case Studies Case 1 ELEKS team has developed a custom test framework designed to accommodate numerous types of testing and measurements: Accuracy testing during
Chapter 6 Essentials of Design and the Design Activities
Systems Analysis and Design in a Changing World, sixth edition 6-1 Chapter 6 Essentials of Design and the Design Activities Chapter Overview There are two major themes in this chapter. The first major
Monitoring Remedy with BMC Solutions
Monitoring Remedy with BMC Solutions Overview How does BMC Software monitor Remedy with our own solutions? The challenge is many fold with a solution like Remedy and this does not only apply to Remedy,
Benchmarking Hadoop & HBase on Violin
Technical White Paper Report Technical Report Benchmarking Hadoop & HBase on Violin Harnessing Big Data Analytics at the Speed of Memory Version 1.0 Abstract The purpose of benchmarking is to show advantages
W21. Performance Testing: Step On It. Nadine Pelicaen. P r e s e n t a t i o n
Performance Testing: Step On It Nadine Pelicaen International Conference On Software Testing, Analysis & Review November 19-23 Stockholm, Sweden P r e s e n t a t i o n W21 Friday 23rd November, 2001 Wednesday
Mark Bennett. Search and the Virtual Machine
Mark Bennett Search and the Virtual Machine Agenda Intro / Business Drivers What to do with Search + Virtual What Makes Search Fast (or Slow!) Virtual Platforms Test Results Trends / Wrap Up / Q & A Business
Disk Storage Shortfall
Understanding the root cause of the I/O bottleneck November 2010 2 Introduction Many data centers have performance bottlenecks that impact application performance and service delivery to users. These bottlenecks
Estimate Performance and Capacity Requirements for Workflow in SharePoint Server 2010
Estimate Performance and Capacity Requirements for Workflow in SharePoint Server 2010 This document is provided as-is. Information and views expressed in this document, including URL and other Internet
Performance Testing Why and How? Sudheer Parpatakam
Performance Testing Why and How? Sudheer Parpatakam 2007 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice 2 Agenda Why Performance Testing?
TESTING AND OPTIMIZING WEB APPLICATION S PERFORMANCE AQA CASE STUDY
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
MAGENTO HOSTING Progressive Server Performance Improvements
MAGENTO HOSTING Progressive Server Performance Improvements Simple Helix, LLC 4092 Memorial Parkway Ste 202 Huntsville, AL 35802 [email protected] 1.866.963.0424 www.simplehelix.com 2 Table of Contents
The Importance of Software License Server Monitoring
The Importance of Software License Server Monitoring NetworkComputer How Shorter Running Jobs Can Help In Optimizing Your Resource Utilization White Paper Introduction Semiconductor companies typically
IOmark-VM. DotHill AssuredSAN Pro 5000. Test Report: VM- 130816-a Test Report Date: 16, August 2013. www.iomark.org
IOmark-VM DotHill AssuredSAN Pro 5000 Test Report: VM- 130816-a Test Report Date: 16, August 2013 Copyright 2010-2013 Evaluator Group, Inc. All rights reserved. IOmark-VM, IOmark-VDI, VDI-IOmark, and IOmark
Available Performance Testing Tools
Available Performance Testing Tools Technical Paper ImageNow Version: 6.7. x Written by: Product Documentation, R&D Date: August 2013 2013 Perceptive Software. All rights reserved CaptureNow, ImageNow,
How To Model A System
Web Applications Engineering: Performance Analysis: Operational Laws Service Oriented Computing Group, CSE, UNSW Week 11 Material in these Lecture Notes is derived from: Performance by Design: Computer
