Submit Article

If you would like to submit an article, click the button below.

Categories

<-- Back to Current Category

Shared WebHosting - the Good, the Bad, and the Ugly

By: George May, Mon Aug 25th, 2008

It started about 10 years ago when i wanted a small website to sell the program I wrote. I just needed an html page that I would type by hand and upload to the server via ftp. I shopped around and found a hosting company. It was all nice for a while. Then my web operations started to grow along with my ambitions. Technology has improved, hosting prices have come down. We now see claims of unlimited disk space, unlimited bandwidth, unlimited mysql databases, ssh access, php, asp, jsp, ruby support in web hosting plans. All for five dollars a month. Well, as you can guess, you get what you pay for. However, I think there is value in going through details and look behind the smoke screen to see what surprises awaits us behind these too good to be true shared web hosting plans. Unlimited Disk Space! Wow! Good luck uploading your files when their ftp server throttles your upload bandwidth. After you successfully upload, or perhaps generate 500GB of content to occupy your disk, you don't have much chance to really serve it to anybody if your bandwidth is not unlimited. Even if it is, there is one unspoken limitation: CPU quotas. CPU Quotas Explained The shared webhosting accounts share a single computer with hundreds or sometimes thousands of other websites. You can do a reverse ip lookup to see who else (which other domain name) shares your static ip address if you know it. Each account is expected to use only a fraction of the CPU. If your account is using more than it's share, then the hosting company will lock it. Your website will be down and you will receive an e-mail. You will then need to talk to the hosting company to resolve the issue. In some cases, the server is automatically monitored and for each 1 minute period that your account exceeds CPU quota, it will be taken down for the next one minute. Under these conditions, unlimited disk quota is pretty much meaningless and you should ignore such claims. Don't ever expect to use more then few gigabytes! Unlimited Bandwidth! Oh ya? Read above about the CPU Quotas we just mentioned. You will not have a chance to use much of your bandwidth and you will not have a really busy website. Shared web hosting is for small projects, small websites. If you want something big, you need to pay for it. There is no free lunch. It is sad that due to competition, hosting companies are forced to advertise unrealistic numbers. Unlimited mysql databases! Sure. Sure. After all, if disk quota is unlimited, I can have few gigabytes of mysql content, right? No! Once you reach 1 Gigabyte, expect to hear bad words from your hosting company. Words such as "Your website has outgrown shared hosting limits", "we need to migrate you to a dedicated hosting plan" will be the norm, inline with their business plans. So, if you plan to have a major operation such as a linkshare affiliate website your product data can easily exceeed 4-5 Gigabytes. You do at least need a Virtual Private Hosting VPS plan to host your content. Shared Web Hosting has it's upsides too. You do not have to configure your webserver details. Most of the time, a very high performance setup will be in place for you. Shared hosting plans are typically hosted on very powerful computers with multiple CPUs, high performance disks and raid backup support. If you host your site on a dedicated server, these resources will be prohibitively expensive for you. Also, on a shared account, since most other websites that share your machine will not be as resource intensive as yours, you may actually get the lions share of the resources if you only need it sporadically. That is a very good deal for the price you pay. Another trick you may be able to pull out is to host your website on one shared server, but host your mysql databases on a VPS or a dedicated server. This way you can leave the webserver setup to the shared hosting company and at the sametime you can get ssh root access to fine tune your mysql database. Why would you need that? You may need it when you want full text search index on mysql records. All shared hosting companies have mysql settings that only allow 4 words or longer to be indexed. If you control your mysql startup parameters, you can index shorter words too. They could include popular words like xml, jpg, gif, rss and so on. Keep in mind, the connection between your two servers will be quite fast. It is not like hosting something at home through pathethic cable or dsl lines. Other reasons for separation of database to a VPS or dedicated server is to control other operational parameters. In a shared plan, they may limit memory consumption such that complicated queries over large tables simply fail. To handle such cases, you really need to grow to a more expensive hosting solution. Luckily, VPS technology has reached a stage where you can have VPS Hosting at very affordable prices. If you have technical skills to find your way as the administrator, you should consider it. If you are a developer, such practice helps improve your skills that can be used elsewhere too.