What Can You do With BTM? Business Transaction Management touches the following disciplines: Performance Management Application Management Capacity Planning Auditing – CMDB Population
Definition - Transaction How do YOU define “Transaction”? Any user action within an application? An end user unit of work? A user activity? A click of the user within an application that sends a request to the datacenter which comes back with an appropriate response?
Business Transaction? Are the following terms equivocal? Transaction = Business Transaction = Business Service = User Activity
Computer Measurement Group So What DO you Measure? Network Monitoring Web Server Monitoring Data Base Monitoring Storage Monitoring App. Server Monitoring
Common Measurements CPU Utilization Memory Consumption Disk I/O Network Traffic What else?
Reliable IT; the Bottom Line With all of those measurements… What Really Matters? Is there one metric that sums it all up? End User Response Time!
Reliable Applications In the perfect world of reliable IT every single user experiences a good response time every single time they perform an action. What more could you ask for?
OK – How Do You See IT? What does reliable IT mean to you? Servers not crashing? No network bottlenecks? Stable CPU? Can IT Reliability be summed up so simply?
Enabling Reliable IT How do you know when an end user experiences a bad response time? They call the help desk? Response time tool?
End User Measurements Real – Software Based Desktop Agent Javascript Injection Browser Plug-in Synthetic Internal Robots (scripts) Provided as a service from servers around the globe Network Appliance Network sniffing Anything Else?
How do you locate the problem? A user calls in or your response time tool sends an alert. What in the datacenter is causing the problem?
Internet Firewall John the User LDAP Load Balancer Proxy Servers Load Balancers Web Servers Application Servers Threads Storage Database External Applications And Services SQL HTTP SOAP Main Frame CICS
All Lights Are Green! CPU is fine Memory is fine Network is fine Where is the problem!? Client Web Servers Data Bases App Servers EUM RUM Network Appliance J2EE Monitor DB Monitor Server Monitor Network Monitor
BTM – Find the Problem Client Web Servers Data Bases App Servers EUM RUM Network Appliance J2EE Monitor DB Monitor Server Monitor Business Transaction Management Network Monitor Track every single user activity throughout all of the tiers that it touches
So How is it Done? Create Purchase Order Account Balance Credit Account
Architecture Collect Transaction Segments Throughout the Datacenter Match the Segments Aggregate Data Transaction Central Server
Methods for Intercepting Transactions Java/.NET Bytecode Instrumentation Network Probes Synthetic Transactions ARM Instrumentation OS Level Agents
Java/.NET Instrumentation Deep Application Metrics Overhead Limited to Application Server
Network Probes No Overhead No Real Correlation Limited Coverage
Synthetic Transactions Monitor Availability at Night Not Real Traffic
ARM Instrumentation Track Transactions Across Tiers Modify Code and Re-Compile the Application
OS Level Agents Track Across All Tiers Application Agnostic Install at Each Server
What to Look for The ability to “stitch” transactions Low overhead (especially in production) Fast and easy implementation Non-Invasive Full coverage (including end users)
Plan Capacity Plan based on actual transaction volumes Reduce over-provisioning Understand the affect of Application changes on the infrastructure Understand how workflow changes affect resource consumption How would YOU plan capacity based on services?
The Power of Data Auditing – know who did what when CMDB – Population and Utilization Help Desk – Knows who to call Charge Back – who is using what – how much Impact Analysis
What Does Gartner Say? Application performance monitoring requires the coordination of five distinct functionalities: 1. Capturing the end-user's experience of application performance quality 2. Modeling the internal structure of the application, and the way the application as whole relates to the infrastructure that supports it 3. Collecting and analyzing fine-grained data about the performance of middleware and environmental software that holds a complex application stack together 4. Tracing transactions as they flow across the stack 5. A performance management database (PMDB) within which the complementary views of application performance provided by each of the four previous functionalities may be coordinated and correlated
Questions?