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.
1 of 41
Downloaded 11 times
More Related Content
Works on my machine, your problem now? - QCon 2014
1. 11
COMPANY CONFIDENTIAL ¨C DO NOT DISTRIBUTE
Works on my
machine ¨C your
problem now?
Wolfgang Gottesheim
Compuware APM
8. 88
¡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
9. 99
Attitudes like this don¡¯t help either
Image taken from https://www.scriptrock.com/blog/devops-whats-hype-about/
10. 1010
Very ¨Dexpensive¡¬ 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
13. 1313
#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
14. 1414
Root Cause:
Class Loading as Performance Hotspot
Most of the time is
spent in
CLASSLOADING
during Peak Load
But the same is true
for ¨Dnormal¡¬ load.
Classloading seems
to be a general
problem that is not
load related
15. 1515
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
35. 3535
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
We identified a regresesion
Problem solved
Lets look behind the
scenes
Exceptions probably reason
for failed tests
Problem fixed but now we have an
architectural regression
Problem fixed but now we have an
architectural regression
Now we have the functional and
architectural confidence