In today’s world, if you don’t have a website, you don’t exist. Well, that may not be totally accurate — you may do just fine with a facebook page or a blog. But the democratic nature of the Internet inspires a lot of us to become providers of information rather than just consumers. The smarter ones, in fact, strategically position themselves in between the providers and the consumers, and reap handsome rewards. Look at the aforementioned facebook, or Google, or any one of those Internet businesses that made it big. Even the small fries of the Internet, including small-time bloggers such as yours faithfully, find themselves facing web-traffic and stability kind of technical issues. I recently moved from my shared hosting at NamesDirect.com to a virtual private host at Arvixe.com, and even more recently to InMotion. There, I have done it. I have gone and dropped technical jargon on my readers. But this post is on the technical choices budding webmasters have. (Before we proceed further, let me disclose the fact that the links to InMotion in this post are all affiliate links.)
When you start off with a small website, you typically go with what they call “shared hosting” — the economy class of web hosting soltuion. You register a domain name (such as thulasidas.com) for $20 or $30 and look around for a place on the web to put your pages. You can find this kind of hosting for under $10 a month. (For instance, InMotion has a package for as low as $4 a month, with a free domain name registration thrown in.) Most of these providers advertise unlimited bandwidth, unlimited storage, unlimited databases etc. Well, don’t believe everything you see on the Internet; you get what you pay for. If you read the fine print before clicking “here” to accept the 30 page-long terms and conditions, you would see that unlimited really means limited.
For those who have played around with web development at home, shared hosting is like having XAMPP installed on your home computer with multiple users accessing it. Sure, the provider may have a mighty powerful computer, huge storage space and large pipe to the Internet or whatever, but it is still sharing. This means that your own particular needs cannot be easily accommodated, especially if it looks as though you might hog an unfair share of the “unlimited” resources, which is what happened with my provider. I needed a “CREATE TEMPORARY TABLE” privilege for a particular application, and my host said, “No way dude.”
Shared hosting comes in different packages, of course. Business, Pro, Ultimate etc. — they are all merely advertising buzzwords, essentially describing different sizes of the share of the resources you will get. The next upgrade is another buzzword — Cloud Hosting. Here, the resources are still shared. But apparently they reside on geographically dispersed data centers, optimized and scalable through some kind of grid technology. This type of hosting is considered better because, if you run out of resources, the hosting program can allocate more. For instance, if you suddenly have a traffic spike because of your funny post going viral on facebook and digg, the cloud could easily handle it. They will, of course, charge you more, but in the shared hosting scenario, they would probably lock you out temporarily. To me, cloud hosting sounds like shared hosting with some of the resource constraints removed. It is like sharing a pie, but with all the ingredients on hand, so that if you run out, they can quickly bake some more for you.
The “business class” of web hosting is VPS or Virtual Private Server. Here, you have a server (albeit a virtual one) for yourself. Since you “own” this server, you can do whatever you like with it — you have “root” access. And the advertised resources are, more or less, dedicated to you. This is like having a VirtualBox running on your home PC where you have installed XAMPP. The only downside is that you don’t know how many other VirtualBoxes are running on the computer where your VPS is running. So the share of the resources you actually get to enjoy may be different from the the so-called “dedicated” ones. For root access and quasi-dedicated resources, you pay a premium. VPS costs roughly ten times as much as shared hosting. InMotion, for instance, has a VPS package for $40 a month, which is what I signed up for.
VPS hosting comes with service level agreements that typically state 99.9% uptime or availability. It is important to note that this uptime refers, not to your instance of VPS, but to the server that hosts the virtual servers. Since you are the boss of your VPS, if it crashes, it is largely your problem. Your provider may offer a “fully managed” service (InMotion does), but that usually means you can ask them to do some admin work and seek advice. In my case, my VPS started hanging (because of some FastCGI issues before I decided to move to DSO for PHP support so that APC worked — I know, lots of techie jargon, but I am laying the groundwork for my next post on server management). When I asked the support to help diagnose the problem, they said, “It is hanging because your server is spawning too many PHP processes. Anything I can help you with?” Accurate statement, I must admit, but not necessarily the kind of help you are looking for. They were saying, ultimately, the VPS server was my baby, and I would have to take care of it.
If you are real high-flying webmaster, the type of hosting you should go for is a fully dedicated one. This is kind of like the first class or private jet kind of situation in my analogy. This hosting option will run you a considerable cost, anywhere from $200 to several thousands per month. For that kind of money, what you will get is a powerful server (well, at least for the costlier ones of these plans) housed in a datacenter with redundant power supplies and so on. Dedicated hosting, in other words, is a real private server, as opposed to a virtual one.
I have no direct experience with a hosted dedicated server, but I do have a couple of servers running at home for development purposes. I run two computers with XAMPP (one real and one on a VirtualBox on my iMac) or and two with MAMP. And I presume the dedicated-server experience is going to be similar — a server at your beck and call with resources earmarked for you, running whatever it is that you would like run.
Somewhat spread out over shared and VPS hosting is what they call a reseller account. This type of hosting essentially sets you up as a small web hosting provider (presumably in a shared hosting mode, as described above) yourself. This can be interesting if you want to make a few bucks on the side. InMotion, for instance, offers you a reseller package for $20, and promises to look after enduser support themselves. Of course, when you actually resell to your potential customers, you may want to make sure your offering has something better than what they can get directly from the company either in terms of pricing or features. Otherwise, it wouldn’t make much sense for them to come to you, would it?
So there. That is the spectrum of hosting options you have. All you need to do is to figure out where in this spectrum your needs fall, and choose accordingly. If you end up choosing InMotion (a wise choice), I would be grateful if you do so using one of my affiliate links.