Handling Session Classes for Predicting ASP NET Performance

  • Slides: 22
Download presentation
Handling Session Classes for Predicting ASP. NET Performance Metrics Ágnes Bogárdi-Mészöly, Tihamér Levendovszky, Hassan

Handling Session Classes for Predicting ASP. NET Performance Metrics Ágnes Bogárdi-Mészöly, Tihamér Levendovszky, Hassan Charaf Budapest University of Technology and Economics, Hungary Department of Automation and Applied Informatics

Outline Introduction l Backgrounds l Ø Queueing model of web applications l Model demonstration

Outline Introduction l Backgrounds l Ø Queueing model of web applications l Model demonstration and validation in ASP. NET environment Ø Model parameters estimation based on one measurement Ø Model evaluation with the help of MATLAB Ø Model validation l Conclusions and future work

Introduction Web-based information systems l An important factor: performance l Ø Low response time

Introduction Web-based information systems l An important factor: performance l Ø Low response time Ø High availability Ø Certain level of throughput l Properly designed performance model Ø Performance prediction Ø At early stages of the development process l Prominent technology: Microsoft. NET

Queueing Model of Web Applications 1 l Application – network of M queues Ø

Queueing Model of Web Applications 1 l Application – network of M queues Ø Application tier – queue with processor sharing discipline Ø A request can take multiple visits to each queue – transitions to its successor and its predecessor l Session-based workload – infinite server queueing system Ø Active session – occupying one server

Queueing Model of Web Applications 2

Queueing Model of Web Applications 2

Evaluation algorithm l Mean-Value Analysis (MVA) Ø Recursive algorithm Ø Introduce customers one by

Evaluation algorithm l Mean-Value Analysis (MVA) Ø Recursive algorithm Ø Introduce customers one by one Ø Terminate when all customers have been entered Ø Visit numbers instead of transition probabilities l Utilization law Ø Utilization of the queues

Multiple session classes l Model enhancement: Ø Incoming sessions classified into multiple classes Ø

Multiple session classes l Model enhancement: Ø Incoming sessions classified into multiple classes Ø Service times, visit ratios, user think time on a per-class basis Time and space complexities of MVA ~ number of feasible population l Approximate MVA algorithm in a few steps l Balanced job bounds in one step l

Model demonstration l Three-tier ASP. NET test web application

Model demonstration l Three-tier ASP. NET test web application

Model parameters estimation and model evaluation Each page and class belonging to the presentation,

Model parameters estimation and model evaluation Each page and class belonging to the presentation, business logic or database were measured separately l Based on one measurement l Number of customers Max. number of customers Number of tiers Average user think time Visit numbers Average service times MVA Approximate MVA Balanced job bounds Response time Throughput Tier utilization

Experimental configuration 1 l Application Center Test Ø Warm-up time for the load to

Experimental configuration 1 l Application Center Test Ø Warm-up time for the load to reach a steady-state Ø Sleep times to simulate realistic usage of the application Ø When we handle one session class, the number of simultaneous browser connections varied. Ø When we handle multiple session classes, there were two classes: a database reader and a database writer. The number of session of one class was constant 10, while the number of simultaneous browser connections of the other class was varied. Ø Average response time and throughput were measured.

Experimental configuration 2 Ø Observed response times and throughputs

Experimental configuration 2 Ø Observed response times and throughputs

Model validation – one session class 1 l Performance prediction with MVA algorithm Ø

Model validation – one session class 1 l Performance prediction with MVA algorithm Ø Model predicts the response time and the throughput acceptably

Model validation - one session class 2 Ø Utilization presentation tier is the first

Model validation - one session class 2 Ø Utilization presentation tier is the first that becomes congested o database queue is the second (29%) o business logic queue is the last one (17%) o

Model validation - one session class 3 l Performance prediction with balanced job bounds

Model validation - one session class 3 l Performance prediction with balanced job bounds Ø Model predicts the response time and the throughput acceptably

Model validation - one session class 4 Ø Utilization o presentation tier is the

Model validation - one session class 4 Ø Utilization o presentation tier is the first that becomes congested o database queue is the second o business logic queue is the last one

Model validation – two session classes 1 l Performance prediction with approximate MVA algorithm

Model validation – two session classes 1 l Performance prediction with approximate MVA algorithm Ø Model predicts the response time and the throughput acceptably

Model validation – two session classes 2 Ø Utilization presentation tier is the first

Model validation – two session classes 2 Ø Utilization presentation tier is the first that becomes congested o database queue is the second (76%) o business logic queue is the last one (15%) o

Model validation – two session classes 3 l Performance prediction with balanced job bounds

Model validation – two session classes 3 l Performance prediction with balanced job bounds Ø Model predicts the response time and the throughput acceptably

Model validation – two session classes 4 Ø Utilization o presentation tier is the

Model validation – two session classes 4 Ø Utilization o presentation tier is the first that becomes congested o database queue is the second o business logic queue is the last one

Conclusions and future work 1 l Model parameters have been estimated from one measurement

Conclusions and future work 1 l Model parameters have been estimated from one measurement l MVA, approximate MVA evaluation algorithm and calculation of balanced job bounds have been implemented with the help of MATLAB l Measurement process was executed in order to experimentally validate the models

Conclusions and future work 2 l Models predicts acceptably Ø response time Ø throughput

Conclusions and future work 2 l Models predicts acceptably Ø response time Ø throughput Ø tier utilization l Model must be enhanced to handle Ø limits of the four thread types in. NET thread pool Ø global and application queue limit l Model may be enhanced by other features

Thank you for your attention.

Thank you for your attention.