How to keep you out of the News: Web and End-to-End Performance Tips
-
Upload
andreas-grabner -
Category
Software
-
view
394 -
download
0
Transcript of How to keep you out of the News: Web and End-to-End Performance Tips
1 @Dynatrace
- Not Just Web: End-to-End
- More on http://blog.dynatrace.com
- Dynatrace Free Trial: http://bit.ly/dttrial
Hosted by: Andreas Grabner - @grabnerandi
How to keep you out of the News
2 @Dynatrace
Nobody wants this …
3 @Dynatrace
4 @Dynatrace
Nor this …
5 @Dynatrace
6 @Dynatrace
As it leads to this …
7 @Dynatrace
The “War Room”
Facebook – December 2012
8 @Dynatrace
And potentially to this …
9 @Dynatrace
10 @Dynatrace
And this …
11 @Dynatrace
12 @Dynatrace
And that’s why Business doesn’t like it either …
13 @Dynatrace
~80% of problems
caused by ~20% patterns
YES we know this
80% Dev Time in Bug Fixing
$60B Defect Costs
BUT
14 @Dynatrace
5 Situations on
WHY this happened,
HOW to avoid it
15 @Dynatrace
16 @Dynatrace
#Push without a Plan
17 @Dynatrace
Mobile Landing Page of Super Bowl Ad
434 Resources in total on that page:230 JPEGs, 75 PNGs, 50 GIFs, …
Total size of ~ 20MB
18 @Dynatrace
m.store.com redirects to www.store.com
ALL CSS and JS files are
redirected to the www domain
This is a lot of time “wasted” especially on high latency mobile
connections
19 @Dynatrace
Fifa.com during Worldcup
http://apmblog.compuware.com/2014/05/21/is-the-fifa-world-cup-website-ready-for-the-tournament/
20 @Dynatrace
21 @Dynatrace
#“Blindly” (Re)use Existing
Components
22 @Dynatrace
Requirement: We need a report
23 @Dynatrace
Using Hibernate results in 4k+ SQL Statements to display 3 items!
Hibernate Executes 4k+ Statements
Individual Execution VERY
FAST
But Total SUM takes 6s
24 @Dynatrace
25 @Dynatrace
Deployment gone bad
26 @Dynatrace
Test Environment
Production Environment
8x slower
3x more SQL
27 @Dynatrace
Test Environment Production Environment
Hibernate, Classloading,
XML – The Key Hotspots
Hibernate, Classloading, XML
– The Key Hotspots
I/O for Web Requests doesn’t
even show up!
That’s Normal: Having I/O for Web
Request as main contributor
28 @Dynatrace
Top Contributor Class.getInterfaces
Called from Hibernates FieldInterceptionHelper
These calls all originate form thousands of calls to
find item by code
29 @Dynatrace
Top Methods related to XML Processing
Classloading is triggered through CustomMonnkey and the Xalan
Parser
Classloading is triggered through CustomMonkey and the Xalan
Parser
30 @Dynatrace
31 @Dynatrace
Architectural Decisions gone
Bad
32 @Dynatrace
We wanted Web 2.0 and Mobile Ready!
33 @Dynatrace
34 @Dynatrace
35 @Dynatrace
36 @Dynatrace
Don’t assume
You know the environment
37 @Dynatrace
Distance Calculation Issues
480km biking in 1 hour!
Solution: Unit Test in Live App reports Geo
Calc Problems
Finding: Only happens on certain
Android versions
38 @Dynatrace
3rd Party Issues
Impact of bad 3rd party calls
39 @Dynatrace
40 @Dynatrace
#No “Agile” Deployment
41 @Dynatrace
Load Spike resulted in UnavailabilityAd o
n air
42 @Dynatrace
Alternative: “GoDaddy goes DevOps”
1h before SuperBowl KickOff
1h after Game ended
43 @Dynatrace
Behind the Scenes
44 @Dynatrace
Quick Demo
45 @Dynatrace
• Get it here: http://bit.ly/dttrial
• YouTube Tutorials: http://bit.ly/dttutorials
• Live Q&A Sessions: http://bit.ly/onlineperfclinic
• Contact me: [email protected] - @grabnerandi
•Special Offer:
• Lifetime license for Browser Diagnostics
• 180 Days for End-To-End
30 Days Dynatrace Free Trial
46 @Dynatrace
Andreas GrabnerDynatrace Developer Advocate
@grabnerandi
http://blog.dynatrace.com