Title: Handling Session Classes for Predicting ASP.NET Performance Metrics
1Handling 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, HungaryDepartment of Automation
and Applied Informatics
2Outline
- Introduction
- Backgrounds
- Queueing model of web applications
- Model demonstration and validation in ASP.NET
environment - Model parameters estimation based on one
measurement - Model evaluation with the help of MATLAB
- Model validation
- Conclusions and future work
3Introduction
- Web-based information systems
- An important factor performance
- Low response time
- High availability
- Certain level of throughput
- Properly designed performance model
- Performance prediction
- At early stages of the development process
- Prominent technology Microsoft .NET
4Queueing Model of Web Applications 1
- 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 - Session-based workload
- infinite server queueing system
- Active session occupying one server
5Queueing Model of Web Applications 2
6Evaluation algorithm
- Mean-Value Analysis (MVA)
- Recursive algorithm
- Introduce customers one by one
- Terminate when all customers have been entered
- Visit numbers instead of transition
probabilities - Utilization law
- Utilization of the queues
7Multiple session classes
- 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
- Approximate MVA algorithm in a few steps
- Balanced job bounds in one step
8Model demonstration
- Three-tier ASP.NET test web application
9Model parameters estimation and model evaluation
- Each page and class belonging to the
presentation, business logic or database were
measured separately - Based on one measurement
Number of customers
MVA Approximate MVA Balanced job bounds
Max. number of customers
Response time
Number of tiers
Throughput
Average user think time
Tier utilization
Visit numbers
Average service times
10Experimental configuration 1
- 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.
11Experimental configuration 2
- Observed response times and throughputs
12Model validation one session class 1
- Performance prediction with MVA algorithm
- Model predicts the response time and the
throughput acceptably
13Model validation - one session class 2
- Utilization
- presentation tier is the first that becomes
congested - database queue is the second (29)
- business logic queue is the last one (17)
14Model validation - one session class 3
- Performance prediction with balanced job bounds
- Model predicts the response time and the
throughput acceptably
15Model validation - one session class 4
- Utilization
- presentation tier is the first that becomes
congested - database queue is the second
- business logic queue is the last one
16Model validation two session classes 1
- Performance prediction with approximate MVA
algorithm - Model predicts the response time and the
throughput acceptably
17Model validation two session classes 2
- Utilization
- presentation tier is the first that becomes
congested - database queue is the second (76)
- business logic queue is the last one (15)
18Model validation two session classes 3
- Performance prediction with balanced job bounds
- Model predicts the response time and the
throughput acceptably
19Model validation two session classes 4
- Utilization
- presentation tier is the first that becomes
congested - database queue is the second
- business logic queue is the last one
20Conclusions and future work 1
- Model parameters have been estimated
- from one measurement
- MVA, approximate MVA evaluation algorithm and
calculation of balanced job bounds have been
implemented with the help of MATLAB - Measurement process was executed
- in order to experimentally validate the models
21Conclusions and future work 2
- Models predicts acceptably
- response time
- throughput
- tier utilization
- Model must be enhanced to handle
- limits of the four thread types
- in .NET thread pool
- global and application queue limit
- Model may be enhanced by other features
22- Thank you for your attention.