Real World Performance Analysis: How to Identify Performance Problems in Your Own Sites

While there have been many presentations focusing on new and interesting ways to solve performance problems, very few have focused on how to find them. The first step to solving a problem is identifying what is wrong and this is something we don’t spend enough time talking about. This presentation will focus entirely on how to analyse a poorly performing site and identify what is wrong. This presentation will start with an example Drupal site. This site will have very slow page load times and exhibit 3-4 problems I see commonly in consulting. These are going to be problems everyone has faced at one point or another; a slow view, a bad module, a misconfiguration, a theme causing problems, etc. The goal for this presentation is not to teach you how to solve these particular problems, but how to find and profile them in general. We will cover the basics of using xhprof, xdebug, devel module, mysql slow query log and more to track down problems such as these. The goal of this presentation is to give the audience some of the basic information, tools and resources to be able to find and solve these problems on their own and even avoid them entirely when designing their own sites. Topics To be Covered:
  1. PHP Level Performance Analysis
    1. XHPROF
    2. XDebug
    3. Strace
    4. perf
    5. Devel Module
  2. Database Level Performance Analysis
    1. MySQL Slow Log
    2. Maatkit
    3. Devel Module
    4. Views Profiling
  3. Briefly Cover Some Possible Solutions To Problems
    1. Caching
    2. Denormalization
    3. Query Fixing


Time slot: 
Wednesday 2:15pm-3:15pm
Coding and development
Experience level: 
Questions answered by this session: 
Why is my site slow?
Why is my server load high?
My staging site was fast, why is my production site slow?
Colorado mountains