Day in the Life: Appl Performance Engineer-Shunra

advertisement
A Day in the Life of an Application
Performance Engineer
Keith Lyon - Shunra Software
keith.lyon@shunra.com
Introduction
• Who am I?
• What’s my background?
• How did I get introduced to Shunra?
Performance Testing Ecosystem Overview
A day in the life…
•
•
•
•
•
My application is so slow…
We take breaks between button clicks…
What do you mean, did we “performance test”?
Non-functional requirements?
Network \ application profiling?
Why do we performance test?
• Determine speed or effectiveness of a
computer, network, software program or device.
• Quantitative tests done in a lab, such as:
– measuring the response time or the;
– number of MIPS (millions of instructions per
second) at which a system functions.
• Qualitative attributes such as:
– reliability, scalability and interoperability may
also be evaluated.
What are “non-functional” requirements?
• A requirement that specifies criteria that can be
used to judge the operation of a system, rather than
specific behaviors. For example:
–
–
–
–
Transactions per second;
CPU Utilization;
Memory Utilization;
Maximum Throughput.
Describe the “Performance” of a system
• Response Time: Typically defined as the time
taken to complete a single business transaction.
It is usually expressed in seconds.
• Throughput: Can be defined as the total number
of business transactions completed by the
application in unit time (per second or per hour).
• Resource Utilization: Different resources factored
in, such as processor, disk (i/o controller),
memory etc.
Performance Test Plan: What To Test
• 80/20 Rule
• Classify transactions
• Critical business processes
Performance Test Environment
• Capacity
• Scalability
• Node Deployment
Performance Test: Data Preparation
• Initial Data Setup
• Ongoing Data Retention
• Test Data
Value In Reporting
CPU Utilization vs. No. of users
This graph tells us whether the CPU utilization
increases with increasing users. It also tells us
about bottlenecks as well as what is the maximum
number of users that can be supported.
Throughput vs. number of users
This graph tells us if throughput increases with
increasing number of users. This graph should
have a similar shape as CPU Utilization graph.
Performance Test: Best Practices
• Reusable Automated Core Scripts;
• Database backups after crucial runs;
• Designing scenarios to achieve right mix of
transactions;
• Do not tune, if you don't have to.
Real Life Example: The Project…
•
•
•
•
Custom Developed Application;
Hosted by Third Party;
Rolling Out to 250 International Sites;
Time to Performance Test = 1 Month.
LAN - Baseline
1 baseline
user
North America Large
Network Model
10 Mbps
40 users
North America Medium
1.5 Mbps
NA WAN 1
15 users
NA WAN 2
256 Kbps
North America Small
5 users
NA WAN 3
EMEA - Large
2 Mbps
10 users
EMEA WAN 1
45 Mbps
Data Center
768 Kbps
EMEA – Medium
EMEA WAN 2
5 users
128 Kbps
EMEA - Small
EMEA WAN 3
3 users
2 Mbps APAC
APAC - Large
APAC WAN 1
10 users
768 Kbps APAC
APAC WAN 2
APAC – Medium
5 users
128 Kbps APAC
APAC - Small
3 users
APAC WAN 3
Shunra Suite of Products and Hardware
Before
After
Time-consuming
coordination across
remote sites
Global testing conducted
locally
Fixed, permanent testing
network
Flexible testing from any
location; “what-if testing” of
latency, loss, bandwidth
Maintaining remote load
generators
Emulating WAN in lab with
shared infrastructure
Testing only during
network maintenance
windows
Testing is independent of
production network
Shunra Professional Services
Shunra VE Desktop for HP Loadrunner
TRY and FLY
Enter to Win Free Round-trip Airfare to HPSU Barcelona
Test Drive Shunra for HP™ - 30 Day Trial
Contact James Newton @ 267-519-5104 or james.newton@shunra.com
Winner announced 10/22. Must register by 9/22.
WWW.VIVIT-WORLDWIDE.ORG
Download