Legacy Hosting Types
If you’ve got a small business website today, the chances are you’re running on shared hosting. With traditional shared hosting, you share a web server (a physical computer in a rack in a data centre), with a large number of other customers (usually hundreds). Your hosting provider configures the server on your behalf, and you interact with your slice of the server through a control panel. This control panel abstracts the technical details and allows you to easily manage files and emails, and probably install common web applications with little or no technical knowledge required. Conversely, you are limited in your ability to go “under the hood” to tweak your server environment.
You will be allocated a certain amount of resources on the server, in terms of disk space, data bandwidth, number of websites you can host on the account, etc. If you exceed this allowance, your account may be throttled or suspended, or you may have your account terminated, depending on the policies of the hosting company. Some hosting companies will allow you to buy a higher tier of shared hosting, with more resources. Usually shared hosting is oversubscribed, in that if all users were to use their full allocations, the hosting company would not have the computing resources to cope.
Hosting companies know that most users only use a fraction of the allocated resources, and plan their infrastructure accordingly. You may occasionally find that you’ve been allocated a server which is working too hard. Perhaps the other customers are using a higher-than-average proportion of their allotted resources, or someone has written a rogue web application that is hogging the server CPU. Maybe somebody on the server is subject to a DDOS attack. Hosting companies can take steps to mitigate against these threats and try to ensure that no customer is adversely impacted by problems with another customer hosted on the same server, but they aren’t infallible. I’ve had to deal with unusably slow shared hosting on a number of occasions – I never put up with it, and neither should you.
For typical brochure websites with moderate traffic, the shared hosting approach is cheap, easy to understand and is well capable of handling the demands that your website will place upon it.
Up until 5 or 6 years ago, when you outgrew shared hosting, the next step up was a dedicated server. You literally bought or leased a physical machine that resided in a data center, The hosting company could guarantee you electrical power and internet connection, by virtue of having a robust infrastructure with redundancy and failover measures in place. You would also be guaranteed a technician on site to physically reboot your server or replace a bad component if required. Apart from that, however, you were on your own. A dedicated server would typically come with no operating system, so you’d be responsible for loading the operating system, installing the web server software, securing the machine from hackers and tweaking the configuration of the server so that it was running optimally.
In essence dedicated hosting sacrifices cheapness and simplicity for power, flexibility and guaranteed performance. The main issue with dedicated hosting is scalability. If you outgrow your server, you may be able to install more memory, or another CPU, but ultimately your server will be pimped to the max and you’ll be unable to wring another drop of performance from it. At this point you need another server, and a load balancer to spread traffic between them – it starts to get messy.
Virtual Private Servers
When virtualisation became a hot topic about 10 years ago, it became clear that the technology would be very useful in the web hosting domain. Virtualisation involves carving a physical server into a number of virtual servers, each of which thinks that it is a physical machine. The virtualised machine can have its own dedicated guaranteed resources, so disk space, CPU power, bandwidth, etc. are all quantifiable. This is a middle ground between shared hosting and dedicated hosting, offering the power, flexibility and guaranteed performance of the dedicated server at a lower price point. Scalability was still an issue – it isn’t generally possible to non-disruptively upscale a virtual machine, but adding another VPS and using a load balancer should be an option.
The New Shiny – Cloud Hosting
Cloud hosting is still a relatively new concept, but larger online presences are rapidly adopting it. If you use Reddit, Hootsuite, Netflix, or any one of a myriad of other online services, you’re experiencing the cloud. The end user experience is unchanged by the nature of the hosting, in fact the only time we become aware of the underlying cloud infrastructure is when there’s a big outage with a large scale cloud hosting provider like Amazon (which incidentally hosts all the services mentioned above, and has been subject to some high profile outages in the last few years).
In essence, cloud hosting abstracts the physical hardware from the user. The site administrator buys services from the provider as a commodity – by the computing hour or by the Gigabyte/month, or some other such metric. The administrator doesn’t care about the physical computing resources providing the commodity so long as that commodity is reliably delivered. A large operation might have cloud web servers physically based in Chicago and Paris, with database services from a data centre in Boston and archival storage in London. So long as it all works together and delivers the required performance, the nature and location of the underlying hardware is irrelevant.
The beauty of the cloud lies in it’s flexibility. I use cloud hosting for some of our clients, to allow me to do things I couldn’t even contemplate on traditional hosting. I can “resize” the server in advance of marketing promotions, to ensure it has the resources required to meet the increase in traffic. I can then scale it back when the promotion has completed, so that the monthly bill is minimised. I have fully automated daily and weekly backups, and it’s transactionally aware so that my databases stay consistent. Best of all, I can clone my server and run in on a low-resource cloud instance to do experiments. Any time I implement a significant change on the server I can evaluate it on this test server. If I blow up the server, no problem – it’s the test server, and I can just restore from yesterday’s backup. The production server is completely immune. When the experiments are done I can kill the server so it accrues no further charges, but maintain the disk image so that I can quickly reinstate the exact machine state at any time ( it costs pennies per month to store the server image). I also have the flexibility to implement a load balancer, if I wish, and easily add/remove server instances to meet changing demand. .
All things considered, cloud hosting is an enabling technology. It provides possibilities not available with legacy hosting technologies, and prices are starting to come down as competition increases. For those who are less technical, you do have the option to get a control panel like cPanel or Plesk installed to make life much easier (both have a license fee usually levied on a per month basis), and you also have the option of purchasing tech support for system administration.
If you feel that you are outgrowing your current hosting infrastructure, why not call us or email us? perhaps we can help you with your cloud hosting strategy and implementation. We have relationships with a number of the leading cloud hosting providers, and are one of the few businesses in Cork currently leveraging cloud hosting technologies for our clients.