Many blogs and small website are hosted on shared servers. Unfortunately, those bargain hosting plans have their share of problems. Most of the problem come from overselling, but that doesn’t mean there’s nothing you can do to improve your site’s performance. This guide will briefly detail some of your options.
PHP scripts can eat-up system resources sometimes. Simple scripts, like the use of the include() or require() functions to include bits of XHTML temlate throughout your site, don’t take much processing time, but more complex scripts (like Content Management Systems) can be really taxing under heavy traffic.
If you use the WordPress CMS, which is notorious for it’s resource-hungry scripts, you have a nice drop-in solution. You can use the WP Super Cache plugin, which stores static versions of files (refreshing them every couple hours) to decrease the load. It works well, and response times are visibly faster.
The most resource-hungry part of PHP scripts is generally MySQL queries. If you can minimize them, you’ll improve server performance significantly. If you have enough experience scripting, then you’ll probably be able to find some ways to reduce the number of queries. Think about it, if a script executes five queries, and 500 people load the page one time apiece, that’s 2500 times the database is queried. Forgetting to close connections will add even more unnecessary load. Also, be sure to note that SELECT commands are much more efficient than INSERTs.
Your website can take a huge performance hit if one or more other sites on the same server have high traffic levels. The websites take-up huge amounts of system resources, and your site suffers as a result.
There’s not much you can do about this problem, but your host can. If other sites start to take-up “unfair” amounts of system resources, your host will likely take action.
Anyway, be sure you don’t take-up more than your fair share of server resources. As your site grows, you’ll eventually outgrow your shared hosting account. You may eventually need to get a VPS, or even a dedicated server.
Shared hosting is a great deal, and the best way for most websites to start out. If you do your research, and find a reputable host, shared hosting will probably meet your needs (until your site grows too big, anyway).