Is your site running slowly?
There are an incredible number of resources available to help you determine what's going on with your slow site. If you've never used any of them, or don't know what's available, here's a quick list.
- Pingdom Tools: This site will let you put in your domain name (chrislema.com) or any particular page (chrislema.com/code-review-your-slow-site) and have it tell you the details of the page's performance. It looks at what loads quickly and what takes time. And it tells you (using its own algorithm) a score for the page. That can be helpful as you test your site over time (to see if the changes you're making are having an impact).
- Another great tool is the one from GTmetrix: which includes analysis from PageSpeed and YSlow. The page at GTmetrix is particularly useful in that it articulates for people the dynamics related to why sites perform slowly—with pictures.
- Of course, don't forget webpagetest.org: which will also show you places where your site may be slow.
- Lastly, if you didn't know it, your WordPress site should be friends with iThemes Sync Pro. While it's a product you pay for, it delivers both performance monitoring and uptime monitoring (and alerts). It makes it more than a single use kind of product—with a mobile app to keep you in the loop as well. And it does way more than just monitoring. It's incredibly useful if you're managing more than just your own site!
Are you noticing any patterns?
All of these tools will help you determine what's causing your site's slow performance. But there are tons of dynamics at play. GoDaddy created a nice list of questions to ask about the patterns of performance.
- Is your site slow only during certain hours of the day?
- Is your site slow only from certain geographic locations?
- Are only certain pages of your site slow?
- Do you host multiple alias domains on your account? If so, are they all slow, or just one?
- Do you run multiple Web applications on your account? If so, are they all slow, or just one?
- Do you run multiple plugins, modules, or themes for your Web application? If you disable them, does your site speed up?
- Is your connection to other websites slow?
What next? A code review can help.
When all is said and done, noticing your site is slow is only one part of the dynamic, right? Sure, there are some little things you can do yourself that will help. But if your site is still slow, what do you do next?
May I suggest a code review?
Just about every time I've worked with large sites, and looked over the code on the site, I've found places where the development of the code was either:
- done too quickly
- done by someone with less experience than needed or
- simply optimized for something other than speed.
That's why I normally recommend a code review. Because it allows someone to step into the code and look with fresh eyes. It also lets them look for the normal gotchas that they know about that your own developer or team may not.
Performance, after all, is not something that comes naturally or with a check box. Scaling for performance is a function of learning on the job. No one wants to be the job where an engineer learned. But everyone wants the benefits of that learning.
A code review can be a short effort and not dramatically expensive (compared to the gains)—all while improving the performance of your site.
There are several people I recommend for that kind of review. Few, however, are smarter than my friends over at Reaktiv. You may want to chat with them.