First Sign of Strain: 500 Pageviews A Day
The first sign of trouble was when I hit the 500 pageview-a-day mark, when I noticed the server becoming noticeably slower in delivering webpages. I attributed this to WordPress, which is a dynamic web application. Unlike a regular HTML page, WordPress pages are created “from scratch” every time someone requests one by pulling data out of a database and formatting it on-the-fly. This can become very slow, especially if you’ve added plugins like Markdown that reprocess all your text.
To deal with the problem, I had two choices: move to a faster server and pay more money, or address the inefficiencies of the WordPress page model. I chose the latter approach, installing the WP-Cache plugin that essentially stores copies of your pages so WordPress doesn’t have to create them from scratch. This reduces the strain by a significant factor, and allowed me to stay with Pair for another year.
Time to Move: 1500-2000 Pageviews a Day
I started experiencing more serious problems when I hit the 1500-2000 average pageviews-a-day mark, particularly during peak hours. This is the time of day when the most people are visiting your website at the same time. Your server has to work its hardest, handling many simultaneous requests for web pages with what it has. It’s just like rush hour: too many cars on limited road space results in slower traffic flow for everyone. With shared web hosting, there are also other websites sharing your machine, so peak effects can be multiplied.
I started noticing that webpages were taking a long time to come up, and that logging into my admin page to write posts sometimes failed. I also started seeing database connection errors, which indicated that I had exceeded my allotment of bandwidth to the database server. While looking up information about the Pair database servers, I saw that the general consensus was that they are slow compared to other hosting companies. Also, the use of the Mint real-time web traffic statistics package, which had replaced StatCounter for my daily use, was expressly forbidden by Pair’s terms of service. They hadn’t said anything about it, but the additional database strain added by Mint was probably taking away from overall site performance. It was clearly time to move.
Host Evaluation: Pair shared hosting is great if you’re serving lots of static web pages or a small number of dynamic pages through PHP/MySQL.
Picking the New Host
Pair is one of the best web hosts out there, in my experience very responsive and reliable. One caveat: I’m more technical than the average person when it comes to this kind of stuff, familiar enough with server administration that I don’t need to ask for a lot of help. I wanted my new hosting provider to have comparable quality of service at an affordable price.
As I looked around, I was struck by many of the complaints and horror stories that were going around practically every host I’ve mentioned. The only two exceptions were Pair (almost nothing bad said about it, but then again it caters to a more technical crowd) and FutureQuest, which was described as having even better customer support with faster database servers. I did another gut check, which was to google for the phrase “Futurequest sucks”. If you try the same thing with other popular hosts, you’ll usually see a lot of complaining. Not the case with FutureQuest, so that’s who I went with. I moved my files over, restored my database, and I was back in business.
The main issues with FutureQuest were much lower bandwidth and disk space allocations. At the time I moved my main website from Pair, I was on their Webmaster plan for $29.95/month. Bandwidth allocation was 200GB/month, and disk space was 3000MB. My new plan at FutureQuest was $26.95 a month, and included only 20GB of transfer bandwidth and 700MB of disk. At the time, my website was averaging about 15GB of transfer (checkable through the monthly web logs), so I figured I was OK.
The months I spent with FutureQuest were very good. Although I had a few issues with the older version of MySQL they use, once that was cleared up I found the website back to its snappy self. The customer service was everything I had heard, incredibly responsive and proactive. The account control panel, which allows you to do things like set up email accounts and check the status of your service, was also superior to what Pair has in place. I was serving 2500 pageviews a day on average without noticing any degradation in service.
thanks for writing this up. Could you expand on what plug-ins were giving you performance trouble (aside from Mint) and what you did (turn off the plugin, upgrade it, use another to do the function)? Also, since I’m thinking of moving to MT’s (gs) service, any link to issues with it would be very helpful.
Thanks for this excellent post. I can definitely sympathize with your plight, as I recently moved from shared hosting to a managed VPS.
I would be interested in learning more about the resources you used to enhance your linux skills (books, websites, articles, etc.).
Rick: It was the DLoads plugin in mint that was the main culprit. Another one was Tan Tan Reports, which creates a very large entry in the wp-options table, causing mysqld to hiccup. As for the (gs), I don’t know about it…I avoided it because I keep seeing issues about it, plus I wanted to try the (dv) because the price dropped so much. Try searching Technorati for it, and I’m sure you’ll find a lot of commentary on it.
Richard: When I first got started, I had a book called the Unix Systems Administration Guide and a very “traditional” Linux distribution (“distro”) called Slackware. I spent a day going through every file in the
/etcdirectory understanding what it was, looking up what I didn’t know. Thank goodness for the Internet. This was back in 1998. So I learned basic concepts that way, and gave me a framework for understanding.
The challenge is that every linux distro is different in where it puts its configuration files. I’ve started compiling a list of the ones for the Plesk/CentOS setup that the (dv) uses, which I’ll post when I get some time to write it up.
What are you using for stats now? BTW – I’m just getting with WP so this info is invaluable.
I’ve re-introduced Mint, but just with the SessionTracker and Outclicks peppers. I’m also using Google Analytics and StatCounter, both online services that are free. I’ve heard interesting things about HitTail too, but haven’t tried it yet. You can read about my experience with this in my post Mint vs Google Analytics (and StatCounter).
Thanks for the recommendations. I’m looking forward to the configuration file summary, as my host is also running CentOS.
Have you had any difficulties working with Plesk? My VPS host gave me the option of Plesk or CPanel. I originally chose Plesk, but was encountering many issues with PHP open_basedir, includes and file permission issues. Plesk also did not support PHP5 at that time. I eventually switched over to CPanel and its clunky interface and directory naming, but most of functionality seemed to work much better out of the box and I was able to upgrade to PHP5 via the control panel.
As an aside, thanks for maintaining such an informative blog. I’ve been reading for a few months now and truly enjoy the variety, depth and timeliness of your articles. Now if I can just find a way to get started using the Printable CEO … :)
Richard: I haven’t had any difficulties with Plesk other than it not synchronizing with the mail server once. I’ve never used CPanel before. I haven’t looked into PHP5 and other such things (so far, I’ve had no need of them).
Thanks for the compliment too! It’s much appreciated :-)
Funny enough, I got to this page by Googling “futurequest sucks” too. It fares a lot better than Yahoo webhosting, IX Webhosting and HostGator. I guess I’ll be Futurequesting soon too… thanks David.
Even if your article was posted 2 years back it still remains as a very useful resource. As for the hosts mentioned googling “Futurequest sucks” still doesn’t show any relevant results and Media Temple remains as the next soultion to Futurequest’s limitations.
Thanks for your honest reviews.