What is Web Hosting ?
- Web hosting is a service that serves your website to anyone that visits it.
A web hosting service provider, is a business that provides the technologies and services needed for the website or webpage to be viewed in the Internet. Websites are hosted, or stored, on special computers called servers.
What is Web Hosting in general?
When you view a website in a browser, you are actually receiving code written in a bunch of different coding languages.
Your browser converts this code into something we can actually understand: images, buttons, text columns, and so on.
The code for a website is held in a bunch of different files. Everyone’s used files before, they can be created, modified and deleted. Files also need a place to live.
On your computer this is a hard drive. Your computer also has a processor that deals with the basic file operations like editing, copying, deleting and so on.
This is exactly what a server is. It is essentially a computer that holds a bunch of files and is capable of performing operations on them. It has a CPU, it has memory, it has a hard drive, and other components. It even has an operating system, usually a Linux-based one.
So where does hosting come in, what’s the difference between a host and a server? Your host is the company that owns the server your content is on (this is a white lie, more on it later). In addition to giving you the hardware for your website a host usually offers a bunch of other services like server management, support, malware scanning, backups and so on.
The easiest way to get started is to figure out which type of hosting you need, and then look at all the different companies and what they offer for your hosting needs.
Different types of web hosting
There are Three basic ways to differentiate between hosting packages. One way is to look at the technology used for the server.
This is what gives us our four categories: Shared, VPS, Dedicated and Cloud.
The second way is to look at the level of management offered. A server is exactly the same as your computer at home. It not only runs an OS, but software packages as well. Just as any other computer, it needs to be updated and maintained. Most hosts offer server management, but you can buy servers where you need to do all of this work. A managed server means less work for you but also less flexibility, an unmanaged server means more work but more flexibility. There are packages that offer some management services so unmanaged/managed is only the two extremes, there is a spectrum of services in between.
The third way is to look at the additional services on offer. Some additional services would be: backups, level of support, malware scanning and cleaning, SSL certificates, free CDN bandwidth, platform specific services (e.g: WordPress), staging site creation, etc.
Shared Hosting – Cheapest, Best for Beginners
Shared hosting is the budget option. It is extremely cheap, but also not very good – let me explain how it works.
Remember how a server is a computer with resources like hard drive space, CPU speed and RAM? In a shared hosting environment the host puts a large number of users on a single server. By large number I mean that it can be over 1,000 users. Each user may have a number of sites so that one single server houses somewhere around 3,000 sites.
The problem is that these websites all share the server’s resources. If one website has some faulty code or simply gets a lot of visitors it could use 75% of a server’s memory for example, which means that the other 2,999 sites are left with 25% of the total RAM.
Needless to say, this leads to websites going down or loading slowly for people who have nothing to do with the site the issue originated at. Even worse: these issues are completely unpredictable from the point of view of those 2,999 sites.
This is called the “bad neighbour” effect and is one of the main reasons shared hosting is not the best idea.
Quick tip: When you are running your website on a shared hosting and you feel that the load time is a bit slow, get in touch with your hosting provider support and ask them politely to move your shared to another server/neighbourhood.
To be fair, many hosts try and make things better by detecting faulty sites – or sites that experience a high level of traffic – and either working with the owners, or disabling the site temporarily.
So is shared hosting ever a good idea? Yes! It can be great for housing development sites, test sites or websites where uptime is not a huge bother. You could have a personal diary or a website created for your family. It may go down a few times a month, but that shouldn’t be a problem.
Shared hosting is also a great option if you are on a very tight budget. In many countries we are extremely fortunate to experience wages that allow us to afford everything we need. Shared hosting allows businesses to create an web presence in countries where it would otherwise be impossible. As such shared hosting is an extremely important tool for equality on the web.
VPS Hosting – More powerful than Shared hosting
VPS stands for Virtual Private Server and is probably the most popular service to upgrade to and it can be the most well-balanced one as well.
A VPS server is still a shared environment, but the way it is shared is very different.
First of all, a VPS server is usually limited to 10-20. This decreases stress in itself, but the real improvement comes in the form of the hypervisor – which is the coolest name for something ever.
A VPS server is literally split into as many parts as there are users. If there are 10 users, 10GB of RAM and 200GB of hard drive spave on the server, each user will be able expend 1GB of RAM and 20GB of space. Once you hit the RAM limit your site may go down, but the others will remain stable. The hypervisor is the one responsible for managing the virtual machines that create this separation within the server.
This simple addition removes almost all of the bad neighbour effect. Extremely rarely there can be some issues which affect multiple users by affecting the hypervisor itself, but this isn’t something you need to worry about.
Another big benefit of VPS servers is that they are highly configurable, providing a lot more flexibility. On shared hosts you can’t really modify your environment because you’d be changing everyone else’s as well. Since your account is contained within a virtual machine you can make a lot more changes without affecting others. This is something developers will be happy about.
Lastly, VPS is scalable. Since you are running a virtual machine which takes some percentage of the resources available to the server as a whole, the amount of resources you are allowed to use can be increased in seconds. This is a great comfort to business owners who expect their sites to grow and flourish.
So, who is VPS for. I would actually recommend VPS services to anybody who has around $20/month to spend. VPS can get a lot more expensive, but even the lowest tier will be a lot better than any shared hosting solution.
Some well known and respected VPS solutions are offered by inMotion Hosting and Dreamhost.
A high end VPS can be a lot cheaper than a low end dedicated server and also a lot more powerful.The dedicated is a more advanced option just because you are the only person on a server. Look at the resources available to you instead, that’s what really matters.
Dedicated Hosting – If Your Site Exceeds 100k Visits/month
This is the hosting service that negates all bad neighbour issues because you are all alone on a server. This provides a host of benefits, but also comes with quite a few downsides.
Since you get a computer all on your own, many companies allow you to customise it extensively. You may be able to choose the amount and type of memory, the OS to install, and other hardware elements that make up a computer. This gives you a lot of flexibility which may be needed for some specialised software.
The downside here is that you actually need to know quite a bit about computers and server technology. While there are managed dedicated hosting solutions you’ll still need to do a lot more on your own.
On the extreme side of things, you could get a completely unmanaged service where you would even need to install the OS yourself, let alone all the tools needed to run a web server, security scanning, malware removal and so on. I wouldn’t actually call this a downside, but it’s something you need to be aware of when shopping for a server. If you want to go dedicated you’ll need a server admin, or sufficient knowledge to do it yourself.
With great flexibility comes great control. You can potentially run a lot more applications in a more streamlined fashion. You can run a bunch of tools that serve only one purpose: making your website faster.
Being alone on one server comes with another downside: hardware failure. With a cloud VPS if RAM fails in the system, other memory modules simply take over. With VPS if something fails, another memory module might take over, or the module will be replaced automatically pretty quickly. With dedicated servers you might need to wait a lot more, especially if all the server monitoring is up to you.
The only two times I would say you definitely need a dedicated server is if you have highly specialised needs in terms of hardware, or you want a lot more control over your data’s privacy than anywhere else. A dedicated server compartmentalizes you which can be a bad thing, but from a security point of view it’s great.
Some of the best dedicated hosts are: WiredTree, GreenGeeks and PickaWeb.
Cloud hosting is essentially the same as VPS hosting. Some companies don’t even call their service VPS anymore, the say Cloud or Cloud VPS. Let’s look at what cloud computing is first, and get back to what this has to do with hosting.
Cloud based computing is similar to how utilities work. If I plug my video camera into the mains I can use it as much as I need and it will take as much power as it requires at the moment. If it is on standby it will use very little power, when it is recording it will use a lot more but the electric system can handle the changes in power requirements.
Cloud hosting is based on the most innovative Cloud computing technologies that allow unlimited number of machines to act as one system. Other hosting solutions (shared or dedicated) depend on one machine only, while cloud hosting security is guaranteed by many servers. The cloud technology allows easy integration of extra resources, such as space or RAM and thus enable website growth.
A traditional VPS can be scaled, but only to a certain point: the maximum capacity of the hardware it is on. A cloud based system can be scaled a lot further.
Cloud based systems also have a much higher chance of protecting you against DDoS attacks. DDoS attacks are not a security risk, their only purpose is to overwhelm your website with requests, causing the server to crash. Currently the best method of protecting against such an attack is to block as many requests as possible and spread the rest within a large network.
With cloud systems the network is right there, if it is large enough it could withstand an attack much better than any single-server system.
Cloud systems are great if you want to be able to scale your website a lot further than traditional systems. That said, at this point it doesn’t make a huge difference to most people shopping around for VPS. Many companies are switching to cloud based systems to replace their regular VPS systems simply because of the benefits it offers to them as well. Actually, many hosts base their whole infrastructure on the giant cloud based architectures of Amazon and Google.
Some well known hosts that provide cloud hosting are Dreamhost, Google Cloud Platform, Amazon Web Services and Linode.
Cloud Hosting Benefits
- Highest level of website performance guaranteed by multiple machines
- Guaranteed server resources (CPU, RAM)
- Redundant data storage
- No single point of failure
- Website growth flexibility
Choosing a hosting package can be pretty difficult. The first step is understanding the type of hosting you need: shared, vps, dedicated or cloud.