Nailing Down Slow Performance in WordPress
I originally published this post this way back in may 2006. To date it is the most popular post on my site. Since then though a lot of tools have come out that make diagnosing a slow WordPress install a little easier. Here are sow updated tips that can help you get in the right direction.
Tip #1 – What Plugins are You Running?
My original post outlined how I had disabled all of my plugins and reverted my site back to the default WordPress theme to find out if the site would run fine at it’s basic level. From there I added plugins back one-by-one until I found which one slowed my site down. You can still troubleshoot it that way but there is an easier way.
Jason Jacobs linked to my original article from his article in which he had learned how to use Firebug, a Firefox/IE browser plugin, to find what plugin was slowing his site down. In Firebug their is an inspector that will tell you how long it is taking individual items to load. If there is is a plugin that is not optimized then it is probably going to stand out so you can see if their is an update or an alternative for it.
In my case when I originally wrote the article it was a LIghtbox plugin that slowing my site down. I deactivated the plugin and found another one that load quicker. Issue solved.
Here are links to Jason Jacobs article and the Firebug plugin:
- Jason Jacobs – Diagnosing Slow WordPress Performance Using Firebug
- Firebug – HTML, CSS, and JavaScript editor and debugger.
Tip #2 – Cache Baby, Cache
The biggest strength and weakness of WordPress in my opinion is the that it is a completely database driven CMS. This is good in that only the parts of the site that you are editing get updated when you hit save unlike MovableType which has to rewrite ever page of the site. The downfall to being database driven is that ever time you load a page or post in your browser then the database needs to be queried in order to render the page.
Enter caching.
What caching does is make a temporary snapshot of each page and post of your site and gives that to your visitors instead of querying the database. This results in your pages and posts being served up much quicker and also reduces the load on your server. When you update a page the caching plugin automatically rewrites its copy so that your visitors get the newer version.
I have started to roll out caching on my WordPress sites and for some of my clients and I have to say that I have been impressed. There is a noticeable difference in how quick pages are loaded. This makes me especially happy since recently Google has stated that they are now going to incorporate page load times into the algorithm they use to determine search engine results. That means you can actually rank lower in search engine results if you site loads slowly.
The other benefit to caching is that if you get a large rush of traffic all of a sudden from a site like digg, Facebook, or Twitter. Without caching most shared hosting cannot query the database quick enough to WordPress show the message “Unable to Establish Database Connection” instead of your page or post. This can be a nightmare if you were trying to make affiliate or Adsense revenue off the page.
I personally use the WP Super Cache and I have been very happy with it. Note: Setup can be a little involved. Be sure to read the instructions carefully so that it is installed properly on your site.
- WP Super Cache – Caching plugin for WordPress
Tip #3 – Who is Your Host?
You have scrubbed your plugins and they all load around the same amount of time. You have installed the caching plugin and you saw a little improvement. Unfortunately though your site is still loading slow.
What could it be?
Your hosting.
I have been working with WordPress for around 5 years now and I have run it on a lot of different hosting companies. The reason for using different companies was that I had done all on my end for my sites to run good but their servers just could not keep up. From downtime to slowness I have seen a few not so good hosting companies out there.
The reason for the slowness of certain web hosting companies comes down to volume. They just have too may people/web sites on a single server. WordPress especially puts a load on MySQL servers as most people do not use caching. The only way to remedy this is to switch hosting companies.
Personally I have used Hostgator for the last 3 years and have been very happy with them.
Now before you think that I am saying that to get some affiliate dollars out you I am not. Notice that there is no link to Hostgator in this post. If you want to change to them Google them. It is just that I have been with bad hosts and Hostgator has been good to me.
From my experience here is a list of host that have not been so great running WordPress:
- Godaddy – great for domain names but hosting is not so great
- Network Solutions – not great for domain names or hosting IMO
- Jodo Host – This is who I had before Hostgator. They are better now but still not as good as Hostgator
If you have tried the other too solutions above and still are having issue then I would check out a different hosting company.
I Think Google Chrome Killed My WordPress Blog
I have been using Google Chrome on my MacBook for the last few months and have been happy with it – up until about a week ago. About a week ago it seemed that it started to run slower especially when I was in the admin section of a WordPress site (which is all the time). Specifically I would click on the publish or update button and it would seem that the site would get stuck. After a while I would click the refresh button to get it unstuck and lose my work I was trying to save.
Yesterday I was doing some work on my theabundantlife.net blog. I updated some posts and then did a new post. After the new post I did not do anything on the blog. I was having the same issues on that site as I had been having on the other WordPress sites.
This morning I went to the same blog to do another post and there was no content on my home page and no page links on it! I quickly logged in and found that I had zero posts and zero pages. I freaked!
My first thought was that I had been hacked but I had the latest version of WordPress.
I quickly went to my email and searched for a recent backup of the site (I back it up daily and send it to myself via email). Luckily their was a backup from yesterday. I restored the site to yesterday’s version which did not have the latest post that I had done.
I then did a search to see if this was a new venerability and soon found out that there wasn’t. What I did find out is that the disappearing posts and pages happens from time to time when a section of the database gets corrupted. The solution is to do a repair on the db to fix it. I had already done a restore so a repair was not needed in my case.
The reason why I think it was Google Chrome that killed my WordPress db are the times that it seemed to get stuck. Chrome must have been getting stuck in the middle of writing to the db and when I refreshed the browser it killed it somehow. It’s weird but that’s what I think happened.
Needless to say I am back using Firefox again and am actually happy with it. It seems much faster and more stable then Chrome was. Oh well, I’ll use Firefox until it gets slow again and then maybe I will go back to Safari
.
Still Trying to Troubleshoot FeedWordPress Issues
Unfortunately the last few updates to the FeedWordPress plugin have not fixed the issues that I have been having. What is going on is that the meta data is not being pulled in to the individual posts when automatically searching for feeds and therefore it is not linking back to the original post.
I have setup a test site with a fresh install of WordPress and the FeedWordPress plugin that is updating correctly so it looks like I may have to kill my main site and start from scratch. The good thing is that I will be able to keep all 300+ posts that the main site has by exporting and reimporting via the WordPress import/export mechanism. My plan is to export the content, delete all the WordPress files including themes and plugins, and delete the db. From there I will do a reinstall of everything with fresh files and cross my fingers that it will work. It seems extreme but it seems the only fix available.
Wish me luck!
Why I Really Like WordPress 2.8
I have been slowly updating the sites that run WordPress over the last week or so and have started to really love WordPress 2.8. The reason for this sudden burst of affection are a couple of new features that version 2.8 introduced.
The first feature that I really like is the ability to upload themes and plugins via the WordPress interface. This has eliminated the need to break out Dreamweaver or another FTP program to get something uploaded to a site. That is significant because I usually download plugins and/or themes to my desktop. If I have to upload either of them with FTP I have to put them in a particular folder and hopefully I already have the FTP info entered into my program. If not then I need to go through those steps. With the web based upload feature I can quickly upload in a few steps.
The other feature that I like is the built in code editing for themes and plugins. I know this feature has been around for a while but 2.8 added code highlighting. This makes it much easier to find and edit small items without having to break out an FTP program and code editor.
These two features have reduced the time that it takes me to do small edits and I am truly gratefully for them.
WordPress 2.8 Release – Looking Good
Last night WordPress 2.8 was released and I updated the idano.net website to check it out.
The installation went without a hitch through the automatic upgrade process and from what I can tell nothing broke on my site. WordPress.org notes that the new items that were apart of this release were:
- New drag-and-drop widgets admin interface and new widgets API
- Syntax highlighting and function lookup built into plugin and theme editors
- Browse the theme directory and install themes from the admin
- Allow the dashboard widgets to be arranged in up to four columns
- Allow configuring the number of items to show on management pages with an option in Screen Options
- Support timezones and automatic daylight savings time adjustment
- Support IIS 7.0 URL Rewrite Module
- Faster loading of admin pages via script compression and concatenation
It looks like most of the changes in this release have to do with the setup and administration of a WordPress site so things that you do day-to-day should not be impacted.
Here is a quick video WordPress released in regard to version 2.8:
In Other WordPress News…
I am excited to hear that WordPress and WordPress MU (Multi User) are set to be merged. This has the potential to be very cool especially for folks like me that have several blogs but have them all in separate installs. We will have to see when the merged version comes out whether it will be worth it (or even possible) to consolidate all of my blogs together.
Cograts to the WordPress team on another great release!
Fessing Up and Building My Own WordPress Themes
For client work I always work on a custom website design and layout and then transform that into WordPress template for the client’s website. For my personal sites I will admit that I generally rely on the work of others to get something up quickly and have even resorted to purchasing some memberships to theme sites and outright purchased themes. It is the same adage of a chef that does not cook at home, you do it all day as work so the last thing you want to do is do it at home.
Recently I decided to take the easy way out on a couple of personal sites by purchasing a few themes for them. The main reason that I purchased these themes is that out of the box they seemed to do exactly what I wanted and even seemed to be a step up from what I usually produce myself. Unfortunately with both of these themes I spent more time fixing theme to run properly then I would have if I would have built them from scratch myself. In both cases I could tell that the people building them while excellent Web Designers were not that well versed with WordPress.
I supposed this is just a testament to the fact that the easy way out is not always the best way to go.
Back to Photoshop & Dreamweaver I go to make my own themes!
/Rant over.
Playing With the WordPress iPhone 1.2 App
WordPress has released their 1.2 version of their iPhone app. Noteable items that this update includes are:
- Landscape Mode
- New/editing pages
- Comment moderation
- Image resizing
- Password protect posts
I am using it to do this post and it seems to be working pretty well.
Good job WordPress iPhone App Dev team!
Now I just need to get used to tying in Landscape mode with my thumbs.
- Post from my iPhone, please excuse any typos
.
- Writing a Post
- Posts
- Post/Page/Comments
- New Logo
- Page Editing
- Comment Moderation
Fixing FeedWordPress PermaLinks to the Original Website
With the recent upgrade of the syndication plug-in FeedWordPress that I use on my network.idano.net syndication site the links on the articles were no longer linking back to the original website. A few people had noted this issue on the comments thread but no one provided any solutions. Because the network.idano.net website was linking back to itself I was not getting the SEO and cross linking advantage that was intended. In fact there was a possibility that I could be penalized because of duplicate content.
To fix the issue I deactivated and deleted the plug-in on my network.idano.net website and then re-uploaded the plug-in. This included the MagpieRSS-upgrade rss.php and rss-functions.php files that needed to be uploaded to the wp-includes folder as well. Once that was done I cleared the cache in my browser and re-activated the plug-in.
From there I did a test post and manually had the FeedWordPress plugin check for a new post from that site. The plugin found the post and when I checked the Permalink it linked back to the original website like it was supposed to. Unfortunately it did not update the previous posts.
To correct the rest of the posts I went into my syndicated site and deleted the posts that had the incorrect linking. From there I went in and had the plug-in update from all of the syndicated sites. It found all of the posts that I had deleted, added them, and properly linked them back to the original sites.
Problem fixed. Case closed
.
WordPress 2.7 Released!
Wow! That was quick. I just installed RC2 yesterday and now the official release was pushd out today.
I have updated all on my sites and the update went really smooth.
Congrats to the WordPress 2.7 development team!
Search
Categories
idano.net Network
- Stent and Chemo Status – 4 Weeks Later
- Nailing Down Slow Performance in WordPress
- Lego Store in Austin at the Barton Creek Mall
- Swallowing, ER Visits, and a Plan
- Glacier Inn Motel
Me on Twitter...
- My EGD procedure with the stent went great. Doc says it couldn't have been better. On my way home now. Thanks for the prayers everyone! 14 hrs ago
- Having another EGD to take out my current stent and have a new one put in. Prayers are welcome! 18 hrs ago
- Great episode of @madmen tonight. Don is the new Roger. 3 days ago
- More updates...














