In the past couple of weeks, my WordPress 2.5.1 blog has seemed to slow. Loading the blog pages and the administrative pages would sometimes take 30-50 seconds and even timeout.
I have a cheap Linux shared hosting account at Godaddy.com and I wrote to their support several times. They asked me for trace routes. There were many timeouts between the Godaddy servers, ip-xxx-xxx-xxx-xxx.ip.secureserver.net. Godaddy support suggested that it was a problem with my ISP, then said the timeouts were from hitting their firewalls.
Godaddy support responses were, “Currently your hosting account is working properly and with in all perimeters” (sic). They also suggested, “However, as your site is hosted within a shared environment, you may experience periods of reduced performance. If you wish to have further resources devoted to your individual site including access to logs and specific services, you may wish to investigate the purchase of our Virtual or Dedicated Servers.”
The site YouGetSignal.com has a reverse IP check enabling you to… “Find other sites hosted on a web server by entering a domain or IP address…” According to YouGetSignal.com, my site has over 1171 domains hosted on the same web server (as lesliewong.us – 22.214.171.124). I guess that’s what $3.65/month hosting gets. But a random check of the listed web sites showed that they loaded very quickly, even WordPress blogs.
I run a LAMP development server on my Macintosh Powerbook G4 on my local network and disregarding the fact that it is one hop away from any client on the network, it loads the blog very quickly.
I tried several things to try speeding up WordPress. Several times a day, I would optimize the MySQL database, though it is less than 2MB. Most of the overhead was due to comment spam (I use Spam Karma 2). I was already using the WP-Cache plug-in. I also tried disabling all plug-ins, downgrading to to WordPress 2.3.3 and using the default WordPress theme. I disabled Google Adsense and the web cam in my sidebar. None seemed to offer much improvement.
I searched for tips on optimizing the speed of WordPress and found Jeff Atwood‘s post on Behold WordPress, Destroyer of CPUs. I was already using a caching plug-in but there was a response from WordPress founder Matt Mullenweg and his recommended MySQL configuration optimizations. Unfortunately, I don’t think I can edit the my.cnf preference file on my shared host.
I found this site, WebsiteOptimization.com and running the analyzer on my blog home page made me hope that people on dial-up aren’t reading my blog.
Today I created a new MySQL 5.0 database, imported the MySQL 4.0 database that was my blog and now it’s running on that. It seems a little better, but it’s Saturday afternoon at 2:00 PM PST, so who’s on the internets then?