In webhosting terms - a Virtual Private Server, or VPS, is a level up from a shared web hosting service. One reason why many people upgrade to a VPS is because their sites are getting popular and they're regularly exceeding the monthly bandwidth* cap on their shared web hosting server.
*Bandwidth is the amount of data used by your web hosting account, including website traffic. Measured in GB/month. Your monthly data allowance is called the cap.
A VPS is a better, bigger, faster service that is far more secure than a shared web host. Despite the price tag though, there are usually no uptime guarantees*.
*Uptime guarantee is the percentage of time in a month that the server remains up and running
Understanding what a VPS is
The trick to understanding a VPS is the V in Virtual. In computer terminology Virtual means simulated. So you’re getting a simulation of an entire Linux or Windows server to yourself. Actually, you’re still sharing the server. Your share is called a Virtual Machine or VM.
Each Virtual Machine has its own operating system which can be independently started/shut down. It also has its own copy of the server software necessary for web hosting. Each Virtual Machine is entirely separate from every other Virtual Machine (VM) making a VPS much more secure than shared web hosting. But each VM still has to share the physical resources of the server – processing power, storage space and memory – so you’ll see those specs when you sign up. (If you really wanted the entire server to yourself and all the physical resources you’d need to upgrade to a Dedicated Server. That means the box (the computer) is all yours.)
Advantages of VPS over Shared Web Hosting
- Security – each VM independent of other VMs
- Control of operating system and server software
- Your own allocation of RAM (memory), Hard Disk space and CPU (processing power)
Read about Shared Web Hosting if you want to know more.
Managed VPS or Unmanaged VPS?
VPS's come in 2 flavours: managed and unmanaged. Both options have tech support but read the fine print before you sign up.
A Managed VPS could cost as much per month as shared webhosting does in a year, however all the difficult jobs like backing up the VM, allocating memory to programs, software patching, load balancing, port monitoring and other security issues are managed for you. All this is reflected in the price tag which could be as high as €150/mo.
An Unmanaged VPS is significantly cheaper, with starter prices around €20/mo. You are now the Captain of your own Boat which means a steep learning curve if you're not already an experienced Linux/Windows server administrator. You'll need to read the T&C to find out what's your responsibility and what's theirs. This can vary quite a lot between providers.
It’s going to get harder and harder to find a traditional VPS – that’s where you’d have between 10-50 Virtual Machines on an actual physical server. So is a cloud VPS any better? Actually, yes. Because the cloud is distributed network of computers, it overcomes the limitations of a single physical server.
Unlike a traditional VPS, a cloud VPS is almost instantly expandable. You can re-configure your VM in a matter of minutes. Expecting a traffic spike at the weekend? Reconfigure to a bigger instance (copy of the VM). You pay a higher price/hour for the weekend but after the weekend, you can reconfigure back down and pay your usual price. Cloud VPS offerings (eg from your local webhost/whoever) are mostly being resold/repackaged from either Amazon EC2 or the venerable and more user-friendly Rackspace (hint: look for managed cloud solutions).
A Cloud VPS is unlimited - and it's the single biggest advantage in that you can reconfigure your VM (in minutes) to handle bursts and pay by the hour until the burst is over.
Traditional VPS's aren't unlimited. On a traditional (physical) VPS you can opt for a metered or unmetered data connection. On a metered connection you get an upper bandwidth allowance, after which you pay per GB bandwidth. On an unmetered connection you are unlimited in that you'll never pay for exceeding your bandwidth allowance - but that's because they ensure that you can't actually exceed it! An example might help -
An unmetered connection is like a car whose top speed is 100kph. If you were to drive that car at a 100kph for an entire month the maximum distance you could do is 72000km. A metered connection is like a car that can do a higher top speed like 250kph, giving it a theoretical monthly distance of 180000km. But a metered connection is capped. So if it travels beyond it's monthly cap, eg 50000km, then there will be an additional charge per km levied.
The advantage of a metered connection is that it can handle traffic spikes ("bursts") by speeding when it needs to, but the data cap is usually much lower. An unmetered connection can do as much data as its speed allows, but it is NEVER allowed to accelerate ("burst"). So if there was a big traffic spike, the website on an unmetered connection could easily cause the server to go down because there's more data than the connection can physically handle.