Best Practices in Website Management, Part 3: How to Measure & Optimize Site Performance
Upcoming SlideShare
Loading in...5
×

Like this? Share it with your network

Share

Best Practices in Website Management, Part 3: How to Measure & Optimize Site Performance

  • 1,102 views
Uploaded on

 

More in: Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads

Views

Total Views
1,102
On Slideshare
1,014
From Embeds
88
Number of Embeds
2

Actions

Shares
Downloads
19
Comments
0
Likes
0

Embeds 88

https://www.acquia.com 87
http://acquiacomdev.network.acquia-sites.com 1

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. Best Practices in Website Management, Part 3: How to Measure & Opt imize Site Performance 1
  • 2. Introductions! Kate Fogarty, Sr. Manager Digital Marketing @katefogarty 2 Erik Webb, Technical Team Lead @erikwebb
  • 3. What You’ll Learn! •  Why site performance matters •  What site performance is •  How to start thinking about performance • Where to start to solve your site issues 3
  • 4. 4 Source: www.ampfilmstudios.com
  • 5. 5
  • 6. Performance == Better Visibility == More Users == More Revenue! 6
  • 7. Don’t trust your web designers trust data! The optimization process is almost nonexistent with many new age site designers. 7
  • 8. 8 Source: Aberdeen Group
  • 9. IT vs. Marketing! 9
  • 10. Everyone needs performance testing. 10
  • 11. Navigating the request! Client-side services Web browser CDN Web server Drupal 11
  • 12. Have a specific plan! •  Creating representative user scenarios •  Scripting the actions of the simulated users •  Analyzing the results of the test 12
  • 13. Involve the whole team! •  Not just for developers •  Involve sysadmins, developers, and project managers •  Project stakeholders •  Everyone is the QA team! •  Align tests with business goals 13
  • 14. Let’s get on the same page. 14
  • 15. Performance! 15
  • 16. Scalability! 16
  • 17. Scaling! 17
  • 18. Load Testing! 18
  • 19. Stress Testing! 19
  • 20. Contention! 20
  • 21. So what’s wrong? 21
  • 22. Why is my site slow?! •  Large image files •  Many JS/CSS files •  No site caching 22
  • 23. Identify the problem! •  When does it occur? –  All pages? Anonymous and/or authenticated? –  Only when saving content? Only when logging in? –  Under heavy load? Specific times during the day? •  When did it start? –  Avoid the “it feels faster/slower” problem –  Record performance numbers –  Maintain release notes (or retain logs) 23
  • 24. Find an evaluation tool! 24
  • 25. Where to start! •  •  •  •  •  25 Use CSS Sprites Evaluate JS calls and clean up Optimize and compress all images Use multiple levels of caching Use a CDN
  • 26. Your numbers are only as good as your tools. 26
  • 27. Create a solid test plan! What actions will a typical user take? What actions will a power user take? What actions will an administrative user take? What actions do we think could pose a problem? •  What new features have been implemented? •  Where could scalability become a problem? •  What is our overall page coverage? •  •  •  •  27
  • 28. Test and test again! •  Continue testing and tweaking until you see the results you want. •  Test after every new feature is added. •  Never assume everything stays the same. 28
  • 29. Metrics! •  Statistics: Mean, 90th percentile, standard deviation •  Backend performance –  X concurrent authenticated sessions –  X page views per minute –  X seconds maximum per request –  X MB memory usage per request –  Maximum % CPU or GB RAM used on server •  Frontend performance –  X seconds until initial render (“Time to first byte” (TTFB)) –  X seconds until full page load 29
  • 30. Virtual vs. Real load testing! •  Virtual –  HTTP client –  Designed for efficiency –  Limited client functionality •  JMeter cloud service $500/month up to 4800 concurrent 30 •  Real –  Browser client –  Estimates real user experience –  Supports AJAX natively •  Selenium-based service - $499/week up to 100 real users
  • 31. Virtual users! //ul[@id=”main-menu-links”]//a/@href //div[@id=”content”]//h2/a/@href 31
  • 32. Real users! 32
  • 33. See the Whole Picture! •  Isolate the issues –  Telecom company in NJ •  Load testing failed well below expectations •  Testing environment ran within a congested network •  Tell the whole story –  Consumer electronics company in NYC •  Site passed all load tests; failed during real world traffic •  Caching issue caused by referring traffic 33
  • 34. Summary! •  •  •  •  34 You have 4 seconds to grab users attention Fast site = more $ What is site performance How to get started
  • 35. Thanks! Questions/Comments? 35