This presentation focuses on the concepts surrounding performance monitoring across the delivery life cycle. It talks about the process including activities that need to be performance with regards to performance monitoring across the development cycle.
1. Fundamentals of Application Performance Monitoring
Practical Performance Analyst – 21st July 2012
http://www.practicalperformanceanalyst.com
2. Agenda
ď‚›Performance Engineering Life Cycle
ď‚›What is Proactive Performance Management
ď‚›Holistic View of Performance
ď‚›What is Performance Monitoring
ď‚›Why is Performance Monitoring Important
ď‚›What is Application Performance Management
ď‚›Performance Monitoring Process
ď‚›Challenges involved in Performance Monitoring
ď‚›Deliverables for the Performance Monitoring process
ď‚›Resources & tools for Performance Monitoring
3. Performance Engineering Life Cycle
Software Development Life Cycle
Functional Requirements Gathering
Architecture & Design
Build Application
System Test,
System Integrated Test & UAT
Deploy Into Production
Performance Engineering Life Cycle
Non Functional Requirements Gathering
Design for Performance & Performance Modelling
Unit Performance Test &
Code Optimization
Performance Test
Monitoring & Capacity Management
4. Proactive Performance Management
Performance Requirements Analysis
Performance Modelling & Capacity Planning
Build & Optimization
Performance Testing
Performance Monitoring
Capacity Management
Proactive Performance Management helps by –
ď‚›Identifying performance issues early in the design
Validate suitability of your application architecture for your documented NFR’s
Validate your application capacity requirements for the documented NFR’s
ď‚›Advocates early SVT to identify potential bottlenecks early in the build and development cycle
ď‚›Reduces potential for major rework later in the program
ď‚›Advocates using modelling techniques to predict performance impact for growing workload
5. Txn Performance
- Response Times, etc.
Application Performance – Operations/Sec, Messages/Sec, Transactions/Sec, etc.
Infrastructure Performance – CPU Utilization, Memory Utilization, Disk IOPS, etc.
Network Performance – Packet Loss, Jitter, Packet Re- ordering, Delay, etc.
Holistic View of Performance
6. What Is Performance Monitoring
ď‚›Monitoring can be defined as a set of processes whose objectives is to proactively track various relevant metrics so as to prevent breach of agreed Service Level Agreements
ď‚›Monitoring is generally achieved using a combination of process, tools and people capability (Required to efficiently deliver the monitoring service)
ď‚›Monitoring can be looked at from different perspectives:
ď‚›Infrastructure Monitoring
ď‚›Application Monitoring
ď‚›Application Diagnostics
ď‚›Business Transaction Monitoring
ď‚›End User Monitoring
ď‚›Real User Monitoring
ď‚›Monitoring requires the capture and correlation of relevant performance metrics across the different application, infrastructure and network tiers
ď‚›Like everything else in Performance Engineering, an effective monitoring strategy requires a combination of tools, processes and people capability
7. Why Is Performance Monitoring Important
Performance Monitoring is important for the following reasons –
If you don’t measure performance you can’t manage it and if you don’t manage it you probably don’t care
Monitoring is essential to help you capture relevant performance metrics across the various different tiers which then helps you track your SLA’s
ď‚›Monitoring of relevant performance metrics across the various tiers (application, infrastructure, network) helps you correlate performance issues across the various tiers and identify performance bottlenecks
ď‚›Monitoring helps you measure your applications ability to meet your defined Non Functional Requirements
ď‚›Monitoring helps capture relevant business workload metrics & infrastructure workload metrics for purposes of Performance Modelling & Capacity Management
ď‚›Monitoring generates performance metrics which can then be used for root cause analysis when things go pear shaped in production
9. Performance Monitoring Process
Understand Business Objectives & Program Goals
Understand Non Functional Requirements
Understand the Application Stack
Identify relevant Monitoring tools for Infrastructure, Network, Application & Transaction monitoring
Identify relevant Infrastructure & Network Performance Metrics
Identify relevant Application Performance Metrics
Identify relevant Transactional Performance Metrics
Configure and store Performance metrics data in a CMDB
Configure Single Pane of Glass View to provide Real Time View of Performance across Tiers
Collect & store relevant metrics for purposes of Modelling & Capacity Management
Analyse monitoring data in real time & correlate performance across different tiers
Report Application Performance in terms of Business Metrics & IT Metrics
10. Challenges involved in Performance Monitoring
ď‚›Glut of tools combined with numerous vendor buzz words that ends up confusing customers
ď‚›Lack of mature processes within the enterprise to measure, track and manage performance
ď‚›Lack of understanding of relevant performance metrics to measure, track and manage performance
ď‚›Challenge convincing the application teams on the importance of measuring and tracking Business Workload
ď‚›Challenges capturing relevant infrastructure performance metrics for virtualized applications
ď‚›Challenges capturing Business Workload data from production since applications are rarely designed to log Business Workload metrics
ď‚›Providing a single pain of glass by correlating performance metrics across different tools (network, infrastructure, application) and application tiers
ď‚›Finding tools that can help you track application performance from the client browser down to the database server
11. Deliverables – Performance Monitoring
ď‚›Performance Monitoring Approach that defines -
ď‚›Infrastructure Performance Metrics
ď‚›Metrics for Business Workload
ď‚›Application Performance Metrics
ď‚›Transactional Performance Metrics
ď‚›Tools required for monitoring relevant performance metrics across different application tiers
ď‚›Integration between existing tools to provide a Single Pane of Glass view
ď‚›Frequency of data collection for Performance Modelling & Capacity Management
13. Thank You
Please support us by taking a moment and sharing this content using the Social Media Links at Practical Performance Analyst
trevor@practicalperformanceanalyst.com