introduction to enterprise applications capacity planning
DESCRIPTION
The presentation provides an introduction to enterprise applications capacity planning using queuing models. Oracle’s Consulting uses presented methodology to estimate hardware architecture and capacity of planned for deployment enterprise applications for Oracle customers.TRANSCRIPT
![Page 1: Introduction to enterprise applications capacity planning](https://reader030.vdocuments.mx/reader030/viewer/2022020122/54c60c644a795993288b4589/html5/thumbnails/1.jpg)
<Insert Picture Here>
Introduction to enterprise applications capacity planning
using queuing models
Leonid Grinshpan, Ph.D.
Consulting Technical Director
![Page 2: Introduction to enterprise applications capacity planning](https://reader030.vdocuments.mx/reader030/viewer/2022020122/54c60c644a795993288b4589/html5/thumbnails/2.jpg)
2
Disclaimer
The following presentation is intended for information purposes
only, and may not be incorporated into any contract. It is not a
commitment to deliver any material, code, or functionality
All brands and trademarks mentioned are the property of their
owners.
![Page 3: Introduction to enterprise applications capacity planning](https://reader030.vdocuments.mx/reader030/viewer/2022020122/54c60c644a795993288b4589/html5/thumbnails/3.jpg)
3
Presentation’s goal
The presentation provides an introduction to enterprise
applications capacity planning using queuing models
Oracle’s Consulting uses presented methodology to estimate
hardware architecture and capacity of planned for
deployment enterprise applications for Oracle customers
![Page 4: Introduction to enterprise applications capacity planning](https://reader030.vdocuments.mx/reader030/viewer/2022020122/54c60c644a795993288b4589/html5/thumbnails/4.jpg)
4
Presentation’s structure
Methodology of enterprise applications capacity planning
Section 1
Do we really need modeling for capacity planning?
Section 2
Section 3
Solving models and evaluating what-if scenarios
![Page 5: Introduction to enterprise applications capacity planning](https://reader030.vdocuments.mx/reader030/viewer/2022020122/54c60c644a795993288b4589/html5/thumbnails/5.jpg)
5
Section 1
DO WE REALLY NEED MODELING FOR
CAPACITY PLANNING?
Can we just go by our gut feeling?
![Page 6: Introduction to enterprise applications capacity planning](https://reader030.vdocuments.mx/reader030/viewer/2022020122/54c60c644a795993288b4589/html5/thumbnails/6.jpg)
6
Quiz 1. Ticket reservation application
• A ticket reservation application is deployed on one server with 8
CPUs.
• System delivers 10 seconds response time and utilizes server’s CPU
at 50% under workload described in a table:
Q. How many more users an application can support without
response time degradation exceeding 10% ?
Transaction name Number of users Transaction rate
Ticket Reservation (TR) 250 6 per user per hour
![Page 7: Introduction to enterprise applications capacity planning](https://reader030.vdocuments.mx/reader030/viewer/2022020122/54c60c644a795993288b4589/html5/thumbnails/7.jpg)
7
Quiz 1. Ticket reservation application (cont)
![Page 8: Introduction to enterprise applications capacity planning](https://reader030.vdocuments.mx/reader030/viewer/2022020122/54c60c644a795993288b4589/html5/thumbnails/8.jpg)
8
Quiz 2. Ticket reservation and on-line payment
applications
• A ticket reservation application per Quiz 1 uses only 50% of 8 CPU
server capacity. Let’s deploy on the same server on-line payment
application.
• Workload for both applications is described in a table:
Q. How many on-line payment users system can support
delivering on-line payment transaction time 8 seconds?
Transaction name Number of users Transaction rate
Ticket Reservation (TR) 250 6 per user per hour
On-line payment (OLP) ???? 10 per user per hour
![Page 9: Introduction to enterprise applications capacity planning](https://reader030.vdocuments.mx/reader030/viewer/2022020122/54c60c644a795993288b4589/html5/thumbnails/9.jpg)
9
Quiz 2. Ticket reservation and on-line payment
applications (cont)
![Page 10: Introduction to enterprise applications capacity planning](https://reader030.vdocuments.mx/reader030/viewer/2022020122/54c60c644a795993288b4589/html5/thumbnails/10.jpg)
10
Section 2
METHODOLOGY OF ENTERPRISE
APPLICATIONS CAPACITY PLANNING
![Page 11: Introduction to enterprise applications capacity planning](https://reader030.vdocuments.mx/reader030/viewer/2022020122/54c60c644a795993288b4589/html5/thumbnails/11.jpg)
11
Generalized enterprise application architecture
![Page 12: Introduction to enterprise applications capacity planning](https://reader030.vdocuments.mx/reader030/viewer/2022020122/54c60c644a795993288b4589/html5/thumbnails/12.jpg)
12
What is a main application performance indicator
from the users perspective?
![Page 13: Introduction to enterprise applications capacity planning](https://reader030.vdocuments.mx/reader030/viewer/2022020122/54c60c644a795993288b4589/html5/thumbnails/13.jpg)
13
Mapping application into queuing model
Hardware server representation
Total time in node = time in waiting queue + time in processing unit
![Page 14: Introduction to enterprise applications capacity planning](https://reader030.vdocuments.mx/reader030/viewer/2022020122/54c60c644a795993288b4589/html5/thumbnails/14.jpg)
14
Mapping application into queuing model (cont 2)
![Page 15: Introduction to enterprise applications capacity planning](https://reader030.vdocuments.mx/reader030/viewer/2022020122/54c60c644a795993288b4589/html5/thumbnails/15.jpg)
15
Mapping application into queuing model (cont 3)
The relationships between the components of a real system and the
components of its model
Component of application Matching object in
queuing model
Users Node “Users”
Web server Node “Web server”
Application and Database
server
Node “A&D server”
Requests from users Cars
![Page 16: Introduction to enterprise applications capacity planning](https://reader030.vdocuments.mx/reader030/viewer/2022020122/54c60c644a795993288b4589/html5/thumbnails/16.jpg)
16
Transaction response time and transaction profile
Transaction time is a time spent in “cloud”
![Page 17: Introduction to enterprise applications capacity planning](https://reader030.vdocuments.mx/reader030/viewer/2022020122/54c60c644a795993288b4589/html5/thumbnails/17.jpg)
17
Transaction response time and transaction profile (cont 2)
![Page 18: Introduction to enterprise applications capacity planning](https://reader030.vdocuments.mx/reader030/viewer/2022020122/54c60c644a795993288b4589/html5/thumbnails/18.jpg)
18
Input data for capacity planning
List of business transactions
Number of users per each business transaction
Per each transaction a number of transactions per user per hour
(transaction rate).
Transaction name Number of users Transaction rate
Report ABC 20 12
Business Rule X 10 8
Consolidation Y 5 3
1. Workload characterization
![Page 19: Introduction to enterprise applications capacity planning](https://reader030.vdocuments.mx/reader030/viewer/2022020122/54c60c644a795993288b4589/html5/thumbnails/19.jpg)
19
Input data for capacity planning (cont 2)
2. Transactions profiles
Transaction profile is comprised of the time intervals a transaction has spent in
system servers it has visited when application was serving only that single
transaction
Transaction name Service demand (seconds)
Web server A&D server
Report ABC 0.5 0.5
Business Rule X 0.5 2.5
Consolidation Y 0.5 9.5
![Page 20: Introduction to enterprise applications capacity planning](https://reader030.vdocuments.mx/reader030/viewer/2022020122/54c60c644a795993288b4589/html5/thumbnails/20.jpg)
20
Building and solving models using open source
Java Modeling Tool
Open source software package Java Modeling Tools (JMT) can be downloaded from
http://jmt.sourceforge.net/.
![Page 21: Introduction to enterprise applications capacity planning](https://reader030.vdocuments.mx/reader030/viewer/2022020122/54c60c644a795993288b4589/html5/thumbnails/21.jpg)
21
Definition of nodes in JMT
Node “Users” has as many processing units as total number of users
Node “Web server” has one processing unit
Node “A&D server” has one processing unit
![Page 22: Introduction to enterprise applications capacity planning](https://reader030.vdocuments.mx/reader030/viewer/2022020122/54c60c644a795993288b4589/html5/thumbnails/22.jpg)
22
Definition of workload and transaction profile in
JMT
![Page 23: Introduction to enterprise applications capacity planning](https://reader030.vdocuments.mx/reader030/viewer/2022020122/54c60c644a795993288b4589/html5/thumbnails/23.jpg)
23
Solving JMT model
Report ABC time is 0.52 + 0.57 = 1.09 sec
Business Rule X time is 0.52 + 2.84 = 3.36 sec
Consolidation Y time is 0.52 + 10.78 = 11.30 sec
![Page 24: Introduction to enterprise applications capacity planning](https://reader030.vdocuments.mx/reader030/viewer/2022020122/54c60c644a795993288b4589/html5/thumbnails/24.jpg)
24
Solving JMT model (cont 2)
Total utilization of Web server is 4.6% and A&D server is 12.7%
Transaction Business Rule X utilizes Web server at 1.1% and A&D server at 5.5%
Transaction Consolidation Y utilizes Web server at 0.2% and A&D server at 3.9%
![Page 25: Introduction to enterprise applications capacity planning](https://reader030.vdocuments.mx/reader030/viewer/2022020122/54c60c644a795993288b4589/html5/thumbnails/25.jpg)
25
What is needed for enterprise application capacity
planning ?
1. Description of system architecture (hardware servers , hosted software components)
2. Input data:
Workload characterization (flow of business transactions from system users)
Transaction profiles (service demand from single transaction)
3. Model solver
![Page 26: Introduction to enterprise applications capacity planning](https://reader030.vdocuments.mx/reader030/viewer/2022020122/54c60c644a795993288b4589/html5/thumbnails/26.jpg)
26
Section 3
SOLVING MODELS AND EVALUATING
WHAT-IF SCENARIOS
![Page 27: Introduction to enterprise applications capacity planning](https://reader030.vdocuments.mx/reader030/viewer/2022020122/54c60c644a795993288b4589/html5/thumbnails/27.jpg)
27
Open source vs. commercial model solvers
Open source solvers
Limited functionality
Lack of extensive and up-to-day libraries of hardware platforms
Commercial solvers
Accept input data in a form of hardware and software specifications and benchmarks
Automate study of multiple what-if scenarios
Components of broader suites
Include collectors of input data that can be feed into model directly
![Page 28: Introduction to enterprise applications capacity planning](https://reader030.vdocuments.mx/reader030/viewer/2022020122/54c60c644a795993288b4589/html5/thumbnails/28.jpg)
28
Building and solving models using commercial
products
Transaction
name
Service demand (seconds)
Web server App server DB server
Report ABC 0.5 0.2 0.3
Business Rule X 0.5 1.0 1.5
Consolidation Y 0.5 7.0 2.5
Transaction profiles
Three-tier system
![Page 29: Introduction to enterprise applications capacity planning](https://reader030.vdocuments.mx/reader030/viewer/2022020122/54c60c644a795993288b4589/html5/thumbnails/29.jpg)
29
Building and solving models using commercial
products (cont 2)
Specification of hardware servers
Description of business transactions
![Page 30: Introduction to enterprise applications capacity planning](https://reader030.vdocuments.mx/reader030/viewer/2022020122/54c60c644a795993288b4589/html5/thumbnails/30.jpg)
30
Building and solving models using commercial
products (cont 3)
Transaction profiles
![Page 31: Introduction to enterprise applications capacity planning](https://reader030.vdocuments.mx/reader030/viewer/2022020122/54c60c644a795993288b4589/html5/thumbnails/31.jpg)
31
Building and solving models using commercial
products (cont 4)
Description of users
![Page 32: Introduction to enterprise applications capacity planning](https://reader030.vdocuments.mx/reader030/viewer/2022020122/54c60c644a795993288b4589/html5/thumbnails/32.jpg)
32
Building and solving models using commercial
products (cont 5)
MAIN MODEL DELIVERABLES
Average transaction response time for each transaction
Utilization of each hardware server
Transaction time (seconds) Utilization of system servers (%)
![Page 33: Introduction to enterprise applications capacity planning](https://reader030.vdocuments.mx/reader030/viewer/2022020122/54c60c644a795993288b4589/html5/thumbnails/33.jpg)
33
Common what-if scenarios
1. Changing hardware platform
2. Analysis of different operating systems
3. Workload variations
4. Assessment of impact of network and remote users
5. Changing number of cores and CPUs
6. Server farms
7. Redistribution of application’s software components
![Page 34: Introduction to enterprise applications capacity planning](https://reader030.vdocuments.mx/reader030/viewer/2022020122/54c60c644a795993288b4589/html5/thumbnails/34.jpg)
34
Analysis of what-if scenarios
Faster Application server
All three servers are faster
![Page 35: Introduction to enterprise applications capacity planning](https://reader030.vdocuments.mx/reader030/viewer/2022020122/54c60c644a795993288b4589/html5/thumbnails/35.jpg)
35
Analysis of what-if scenarios (cont 2)
Transaction time (seconds)
Baseline system
Transaction time (seconds)
System with fast Application server
![Page 36: Introduction to enterprise applications capacity planning](https://reader030.vdocuments.mx/reader030/viewer/2022020122/54c60c644a795993288b4589/html5/thumbnails/36.jpg)
36
Analysis of what-if scenarios (cont 3)
Transaction time (seconds)
System with fast Application server
Transaction time (seconds)
System with three fast servers
![Page 37: Introduction to enterprise applications capacity planning](https://reader030.vdocuments.mx/reader030/viewer/2022020122/54c60c644a795993288b4589/html5/thumbnails/37.jpg)
37
Analysis of what-if scenarios (cont 3)
Utilization of system servers (%)
![Page 38: Introduction to enterprise applications capacity planning](https://reader030.vdocuments.mx/reader030/viewer/2022020122/54c60c644a795993288b4589/html5/thumbnails/38.jpg)
38
Example of an Oracle enterprise application
production deployment
DO WE REALLY NEED MODELING FOR CAPACITY
PLANNING?
Can we just go by our gut feeling?
![Page 39: Introduction to enterprise applications capacity planning](https://reader030.vdocuments.mx/reader030/viewer/2022020122/54c60c644a795993288b4589/html5/thumbnails/39.jpg)
39
To learn more about enterprise applications
capacity planning please check
author’s book
“Solving Enterprise Applications Performance
Puzzles: Queuing Models to the Rescue”
(available in bookstores and from Web
booksellers)
http://www.amazon.com/Solving-Enterprise-
Applications-Performance-
Puzzles/dp/1118061578/ref=sr_1_1?ie=UTF8&
qid=1326134402&sr=8-1
https://www.amazon.com/author/leonid.grinshpan
Contact Leonid Grinshpan at: