• Save
Works on my Machine - your Problem now!
Upcoming SlideShare
Loading in...5
×
 

Works on my Machine - your Problem now!

on

  • 637 views

Can you get away with that answer after crashing your production website with a change you just deployed? Usually you can't, and instead you're tasked with figuring out and fixing the problem. In this ...

Can you get away with that answer after crashing your production website with a change you just deployed? Usually you can't, and instead you're tasked with figuring out and fixing the problem. In this session, we will talk about typical architectural, coding and deployment problems you might recognize, show what data you need to quickly identify them, and how to catch them before impacting the business.

View the full presentation here: http://youtu.be/-p336zpP1Jc

Statistics

Views

Total Views
637
Views on SlideShare
636
Embed Views
1

Actions

Likes
4
Downloads
2
Comments
0

1 Embed 1

http://www.slideee.com 1

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Works on my Machine - your Problem now! Works on my Machine - your Problem now! Presentation Transcript

  • 11 COMPANY CONFIDENTIAL – DO NOT DISTRIBUTE Works on my machine – your problem now? Wolfgang Gottesheim Compuware APM
  • 22 Business comes up with new features
  • 33 Testing? View slide
  • 44 And this is what you end up with… View slide
  • 55 System Unresponsive?
  • 66 System Unresponsive?
  • 77 What Operations tells Developers…
  • 88 …and what Devs would like to know
  • 99 …and what Devs would like to know Top Contributor is related to String handling 99% of that time comes from RegEx Pattern Matching Page Rendering is the main component
  • 1010 Attitudes like this don’t help either Image taken from https://www.scriptrock.com/blog/devops-whats-hype-about/
  • 1111 Very ―expensive‖ to work on these issues ~80% of problems caused by ~20% patterns YES we know this 80%Dev Time in Bug Fixing $60B Defect Costs BUT
  • 1212
  • 1313 #1: Exhausted Resource Pools
  • 1414 #2: Maxing out Worker Threads The timeline shows how these active worker threads are distributed across all JVMs At ~10:10 AM almost all JVMs max out their available worker threads Detailed information for every single JVM
  • 1515 Root Cause: Class Loading as Performance Hotspot Most of the time is spent in CLASSLOADING during Peak Load But the same is true for ―normal‖ load. Classloading seems to be a general problem that is not load related
  • 1616 Root Cause: Trying to Load a Missing Class Class Loading impacts ALL transactions (fast or slow) Class Loader tries to load a class ending in TransferValidatorBPBeanInfo It’s a class that doesn’t exist
  • 1717 #3: Deployment Mistakes
  • 1818 Root Cause: Missing File
  • 1919 #4: Different settings in Test & Prod
  • 2020 #5: Real-world Data != Test Data
  • 2121 #6: N+1 Query Problem
  • 2222 #7: Misconfigured Caching Framework 798772 DB Calls in 30 minutes With NO TRAFFIC
  • 2323 #8: Memory Leaks Still crashes Problem fixed! Fixed Version Deployed
  • 2424 #9: Bloated Web Sites 17! JS Files – 1.7MB in Size Useless Information! Even might be a security risk!
  • 2525 Recent example: Healthcare.gov 55 JS Files, 16 jQuery related! Merging files can reduce roundtrips by 95%
  • 2626 #10: Browser caches 62! Resources not cached 49! Resources with short expiration
  • 2727 Problems that could have been avoided BUT WHY are they still making it to Production? HOW can we catch them earlier?
  • 2828 Root Cause: Disconnected Teams
  • 2929 Root Cause: Disconnected Teams
  • 30 Solution: DevOps + Performance Focus
  • 3131 Culture Become ONE Team
  • 3232 Culture Testability
  • 3333 Automate & Measure …Performance
  • 3434 Automate & Measure …Scalability
  • 3535 Automate Deployment
  • 3636 Share Tools
  • 3737 How? Performance Focus in Test Automation Build 17 testPurchase OK testSearch OK Build # Test Case Status Test Framework Results
  • 3838 How? Performance Focus in Test Automation Build 17 testPurchase OK testSearch OK Build 18 testPurchase FAILED testSearch OK Build # Test Case Status Test Framework Results We identified a regresesion
  • 3939 How? Performance Focus in Test Automation Build 17 testPurchase OK testSearch OK Build 18 testPurchase FAILED testSearch OK Build 19 testPurchase OK testSearch OK Build # Test Case Status Test Framework Results Problem solved
  • 4040 How? Performance Focus in Test Automation Build 17 testPurchase OK testSearch OK Build 18 testPurchase FAILED testSearch OK Build 19 testPurchase OK testSearch OK Build # Test Case Status # SQL # Excep CPU Test Framework Results Architectural Data Let’s look behind the scenes
  • 4141 How? Performance Focus in Test Automation Build 17 testPurchase OK testSearch OK Build 18 testPurchase FAILED testSearch OK Build 19 testPurchase OK testSearch OK Build # Test Case Status # SQL # Excep CPU 12 0 120ms 3 1 68ms Test Framework Results Architectural Data
  • 4242 How? Performance Focus in Test Automation Build 17 testPurchase OK testSearch OK Build 18 testPurchase FAILED testSearch OK Build # Test Case Status # SQL # Excep CPU 12 0 120ms 3 1 68ms 12 5 60ms 3 1 68ms Test Framework Results Architectural Data Exceptions probably reason for failed tests
  • 4343 How? Performance Focus in Test Automation Build 17 testPurchase OK testSearch OK Build 18 testPurchase FAILED testSearch OK Build 19 testPurchase OK testSearch OK Build # Test Case Status # SQL # Excep CPU 12 0 120ms 3 1 68ms 12 5 60ms 3 1 68ms 75 0 230ms 3 1 68ms Test Framework Results Architectural Data Problem fixed but now we have an architectural regression Problem fixed but now we have an architectural regression
  • 4444 How? Performance Focus in Test Automation 12 0 120ms 3 1 68ms Build 20 testPurchase OK testSearch OK Build 17 testPurchase OK testSearch OK Build 18 testPurchase FAILED testSearch OK Build 19 testPurchase OK testSearch OK Build # Test Case Status # SQL # Excep CPU 12 0 120ms 3 1 68ms 12 5 60ms 3 1 68ms 75 0 230ms 3 1 68ms Test Framework Results Architectural Data Now we have full functional and architectural confidence!
  • 4545 How? Performance Focus in Test Automation Embed your Architectural Results in Jenkins
  • 4646 Version Control System dynaTrace Server Developer CI Server Commit Trigger build Build and run tests Publish performance metrics Drilldown for further analysis Inform about build status Look beyond test pass/fail!
  • 4747 How? Performance Focus in Test Automation Analyzing All Unit / Performance Tests Analyze Perf Metrics Identify Regressions
  • 4848 How? Performance Focus in Test Automation Cross Impact of KPIs
  • 4949 Share Results
  • 50 © 2011 Compuware Corporation — All Rights Reserved Simply Smarter