Upload
brynley-scully
View
146
Download
0
Embed Size (px)
Citation preview
Performance Engineering
A trip through the Apps and Ops lifecycles
Speaker: Brynley Scully @BrynleyScully
Company: Hewlett Packard Enterprise
Place: Singapore
About the Speaker
Brynley Scully
Head of Testing, South East Asia
Hewlett Packard Enterprise
Testing Governance
Testing Project Delivery
Testing Pre Sales
Testing Design & Review
Testing Project Remediation
https://sg.linkedin.com/in/brynleyscully
@BrynleyScully
2
Today’s Roadmap
Performance Impact to Businesses
Performance Testing
Performance Engineering – A trip through the application and operations lifecycles
Performance Engineering in Dev, Test & Ops
3
OperationsLifecycle
ApplicationLifecycle
Performance Impact
to Businesses
Performance Impact to Businesses
5
05 July 2015. The Straits Times.
Performance Impact to Businesses
6
61%
1. 1. “Failing to Meet Mobile App User Expectations. A Mobile App User Survey”. Dimensional Research and Hewlett Packard. February 2015.
of users expect mobile apps to start in 4 seconds or less.1
7
67%
2. “DevOps, APM and the Digital User Experience. Changing What We Know About Application Performance”. Dimensional Research and Hewlett Packard Enterprise. January 2016.
Performance Impact to Businesses
of companies do not have insight into line of code or server transactions that is causing slow performance.2
Performance Impact to Businesses
83. https://www.fastcompany.com/1825005/how-one-second-could-cost-amazon-16-billion-sales
$1.6Bsales revenue loss for Amazon for one second of slowdown.3
Performance Impact to Businesses
9
Time is money. The slower the app, the more money your business will lose.
Performance
Testing
Performance Testing
11
Performance testing is sometimes an afterthought.
Did I forget something?
Performance Testing
12
Product Sprint Sprint Performance DeployBacklog Backlog Backlog Test Sprint
- APPLICATION LIFECYCLE -
Requirements Design Build Test DeployAnalysis Performance
Test
- APPLICATION LIFECYCLE -
Performance testing usually:
• occurs during the application lifecycle.
• happens within a test sprint or test phase in the later part of the application lifecycle
• concludes before app deployment to production.
Performance Testing
13
Select number of user transactions.
Performance modelling.
Performance test scripting.
Load test with concurrent user volume.
Measure: response times, throughput, utilization.
Performance Testing
14
But, what’s missing ? Test environment hardware?
Background jobs ?
Network conditions ?
Designed for performance ?
Code built with optimization ?
Self healing triggers ?
Performance in production ?
Performance Engineering -
A trip through the
Apps & Ops Lifecycles
DEFINE for performance
16
APPSLIFECYCLE
OPSLIFECYCLE
DEFINE
Gather business & technical requirements for app performance.
Understand business impact of app performance.
Design technical solution for performance.
DEVELOP app with performance
17
APPSLIFECYCLE
OPSLIFECYCLE
DEFINE
DEVELOP
Design app for easy performance tuning, in production.
Optimize code for performance.
Design and code with performance self-healing capabilities.
Load test early. By developers. Use integrated dev tools.
18
Optimize code for performanceHP Network Virtualization
19
Load test early. By developers. Use integrated dev tools.Microsoft Visual Studio
TEST for performance
20
APPSLIFECYCLE
OPSLIFECYCLE
DEFINE
DEVELOP
TEST
Test with peak loads.
Identify key user transactions.
Design realistic performance model.
Incorporate network latency.
Leverage on service virtualization.
Capture transaction performance metrics.
Capture server performance metrics.
21
Test with peak loadsHP LoadRunner
DEPLOY apps to production
22
APPSLIFECYCLE
OPSLIFECYCLE
DEFINE
DEVELOP
TEST
DEPLOY
Deploy to production.
Setup production real time performance monitoring.
Setup production performance event logging.
Setup synthetic app monitoring.
MONITOR apps in production
23
APPSLIFECYCLE
OPSLIFECYCLE
DEFINE
DEVELOP
TEST
DEPLOY
MONITOR
Run synthetic monitoring.
Performance event monitoring for apps.
Event monitoring for infrastructure.
Automated alerts to support and dev.
Devs & Testers have access to monitoring tools and data.
Understand real user experience.
24
Run synthetic monitoringHP AppPulse Active
25
Event monitoring for appsHP AppPulse Mobile
26
Understand real user experienceHP AppPulse Mobile
DIAGNOSE performance incidents
27
APPSLIFECYCLE
OPSLIFECYCLE
DEFINE
DEVELOP
TEST
DEPLOY
MONITOR
DIAGNOSE
Use tools to rapidly diagnose performance issues.
Diagnose app.
Diagnose infrastructure.
Diagnose network.
28
Diagnose appHP AppPulse Mobile
RESOLVE performance incidents
29
APPSLIFECYCLE
OPSLIFECYCLE
DEFINE
DEVELOP
TEST
DEPLOY
MONITOR
DIAGNOSE
RESOLVE
Tune, tweak performance settings.
Trigger app changes for performance issues resolution.
Performance self healing triggers.
CHANGE app for better performance
30
APPSLIFECYCLE
OPSLIFECYCLE
DEFINE
DEVELOP
TEST
DEPLOY
MONITOR
DIAGNOSE
RESOLVE
CHANGE
Use learnings from production to improve performance.
Redesign for better performance.
Code refactoring.
Use predictive analytics to initiate performance improvements.
Performance Engineering
in Dev, Test & Ops
Performance Engineering in Dev, Test & Ops
32
APPSLIFECYCLE
OPSLIFECYCLE
DEFINE
DEVELOP
TEST
DEPLOY
MONITOR
DIAGNOSE
RESOLVE
CHANGE
Performance Engineering has many touch points throughout the Apps and Ops lifecycles.
1
Performance Engineering in Dev, Test & Ops
33
Performance Engineering will be successful with good use of tools and technology.
2
Performance Engineering in Dev, Test & Ops
34
Faster is better. Performance Engineering drives for better performing solutions.
3
Performance Engineering in Dev, Test & Ops
35
Performance Engineering has many touch points throughout the Apps and Ops lifecycles.
Performance Engineering will be successful with good use of tools and technology.
Faster is better. Performance Engineering drives for better performing solutions.
3
2
1
Thank you
Speaker: Brynley Scully
Twitter: @BrynleyScully
LinkedIn: https://sg.linkedin.com/in/brynleyscully