VPS stands for Virtual Private Server, sometimes referred to as Semi-Dedicated Server.
A fully dedicated server these days can be equipped with numerous CPU cores, tons of RAM, and Terabytes of storage - all in 1 small box housed in a data center rack. Such a physical machine is too big for most use cases. So, in order to efficiently utilize their building space and optimize their costs on hardware deployment & power consumption, data centers take advantage of virtualization technique. Using this technique, a single powerful physical server is logically divided into multiple small-sized virtual servers (also called virtual machines, or VMs), each of which is completely isolated from the others. This has enabled them to serve to a very large community of users who are on a budget and yet need a (less powerful) dedicated hosting environment.
The term virtual is hence used, to emphasize that the virtual machine, although running in software on the same physical computer as the virtual machines of other customers, is functionally equivalent to a separate physical computer, is dedicated to the individual customer's needs, has the privacy of a separate physical computer, and can be configured to run as an independent server. Each virtual server runs its own operating system and can be independently rebooted.
Such a virtualization has been possible due to the development of virtualization software and technologies for computers. If you wish to learn more about virtualization, please read our article on What is Virtualization.
On the lower end of the spectrum you have shared hosting where all resources are equally shared by all customers; on the higher end you have dedicated server where a full physical server and all its resources are exclusively dedicated to one customer. VPS finds its place in-between.
VPS comes in 2 main configurations:
Here we are concerned with the first configuration, viz., the single server VPS.
VPS works by partitioning a single physical server to appear as multiple virtual servers. This partitioning is not a physical one that we have seen traditionally, where a hard disk is partitioned to create more than one logical drive and then a separate OS is installed on each drive. Such a traditional system has the drawback that at any point of time you can boot and run only one of the installed OSes, hence cannot form a model for VPS. In case of VPS, the partitioning is done using a virtualization technique.
Your web hosting provider installs a virtual layer on top of the operating system (host OS) of the server using virtualization technology. This layer creates separate logical compartments (or containers) isolated from each other. It allows each user to install their own OS (guest OS) and software. See figure below.
The guest OS is assigned a fixed quantum of CPU cores, memory and disk space and it does not know of the existence of these assigned to other virtual machines on the same physical server. For a deeper insight, please read our article on Virtualization.
The virtualization technique makes a VPS a truly private server. All your files and software are fully contained within your allocated container. This means your website resides and runs within a secure container. Further, your specified computing resources are fully guaranteed as they are exclusively reserved for your use.
Thus, a VPS hosting simulates the experience of a dedicated server even though it is sharing the physical server with other VPSes.
VPS hosting is essentially a trade-off between shared hosting and fully dedicated hosting. A VPS provider would sell multiple VPS accounts on the same server. However, in VPS hosting you get a fixed share of server resources which are always available for your websites. The primary server resources are - CPU (in VPS parlance vCPU, or Virtual CPU), RAM, Network & Storage.
So, even if there are other users sharing the same physical server, they will never bite your allocations. The resources in a VPS environment are so allocated and the server is so configured that each VPS account owner perceives it as a completely dedicated server.
The virtual server is assigned a name as per your own brand name. Private name servers are allowed and you are also allocated one or more dedicated I.P. addresses that you use solely for your own websites. If any one tries to find out the ownership of the server from any of your IP addresses they will be presented your own branded server name. Hence the name virtual private server.
A VPS hosting account provides you with root access to the server so you can configure it as per your own specific requirements and also install your own specific software. You have to only make sure that all software that you install are legitimate and you posses a valid license for the same.
A VPS account will also allow you to send out more number of emails per account than what you are allowed in a shared hosting plan. Hence they are quite suitable for companies who have a high volume of daily email flow. Although, my personal recommendation is to always opt for an independent business email hosting plan, which most hosting companies provide these days; and keep your VPS exclusively reserved for the purpose of running your website(s).
Hosting companies usually offer pre-designed 4-5 different types of plans that primarily differ in the quantum of CPU cores, RAM, disk space, and bandwidth. Additionally, they may provide choice of OS and control panel. They may even give you to choose storage type - whether SSD or HDD (SSD is recommended).
Some hosting companies even provide facility to increase CPU and RAM capacity (when your demand increases) without the need to upgrade to a higher plan. You also get to choose your data center in a country that is nearest to the geographical location of most of your website’s audience.
The most popular type of VPS hosting provided today is KVM Linux, and is recommended.
You can check a typical VPS hosting plan here. This is offered by WebServicesWorldwide, a company owned by me.
Most hosting companies provide you the option to choose either an un-managed or a managed VPS plan. Unmanaged plan is suitable for the techies who want full freedom to play around with their virtual server. For businesses, it is recommended to always opt for a managed VPS plan where the hosting company takes care of all the nuances and technicalities so that you can stay focused on your website business. When you buy VPS from WebServicesWorldwide, our team of technical experts lend a helping hand and are always available to help and guide you in effectively managing your server and ensuring that your websites run trouble-free. This is part of our tech. support and does not carry any extra charge.
As the traffic on your website grows, your web deployment will require to more frequently demand CPU and memory resources. Your shared hosting plan will fail to cater to this demand, and during spikes your website will crash. This will happen due to restrictions on CPU & memory usages imposed on a shared hosting environment.
This is the time when you feel the need for more resources to handle the high volume of website traffic and associated load, and start looking for upgrade options. You need not jump straight to an expensive dedicated server. Instead you can upgrade to a VPS hosting server.
VPS is a good value-for-money proposition, as fully dedicated servers can be pretty expensive and you may not often need a full server dedicated to your website(s). A VPS will act as an ideal bridge between shared hosting and dedicated hosting. It will give you enough breathing time until your requirements reach the level of a dedicated server. Perhaps you may never ever need to move to a dedicated server, as VPS plans offer great scalability, with the ability to upgrade CPU, RAM and storage instantly.
There are several other reasons due to which a VPS will be the right option for you, vis-a-vis shared hosting. I have described the important ones below:
For peace of mind, it is imperative that you take time to study the offerings of a few select hosting companies, go through their specs, read their FAQs, read their terms of service, look out for restrictions that are usually in fine-print. Doing this exercise will make your life easy in the long run.
To simply the process, I have described below the important parameters to consider when selecting a hosting provider for your VPS. The VPS you select must be the right fit for your workload conditions and also be reasonably priced - cheapest is never always the best.
1. Hosting company’s reputation for service: It may be hard to know the actual reputation of a hosting company. Although there are volumes of reviews on the internet, most of these are either paid reviews or written by novice bloggers who have little knowledge of the hosting business and are biased towards companies whose affiliate plans they are secretly marketing. A better approach would be to directly visit the hosting company’s website, go through the various pages, read them to get a feel for their level of professionalism; check their age - how long have they been in the market. Avoid fly-by-night cheap operators. Even call them to check how well they respond to your queries. You yourself are the smartest judge.
Since I run a hosting business myself, I would not like to do any comparative here. However, if your choose our services, I can assure you that your will be happy with our service. We have been in this business for 25+ years now and have customers who have been with us for years. You can check our website at Web Services Worldwide. The other company that I can recommend is Hostinger. I have found Hostinger to be reliable and have no qualms about promoting them.
2. Methods to contact support: The best method to contact a hosting company’s support team, in my opinion, is via a direct email address. Check if your hosting company makes public a direct email address and also their support phone number. Check that support is provided 24x7 and also on weekends. Check that if they provide chat support, whether the chat is attended by a human being or answered by an AI robot. AI robots are irritating - you would obviously like to chat with a human being. Though, chat supports are not very effective and take away a lot of your time waiting on the chat while the tech. support staff is working to resolve your issue. You will be better off with a company that provides direct email support and attends to your emails quickly.
3. To what extent is your hosting company willing to help: Interact with the company before making a purchase, and ask them specific questions about the level of support they provide without charging extra. Visualize the possible problem scenarios you may run into while self managing your VPS, such as you accidentally applied a wrong configuration and cannot figure out how to roll back, or you do not know how to install an SSL certificate or associate a dedicated IP to a particular domain name, or you cannot figure out how to schedule periodic backups, and so on. Get explicit answers so that you are sure they will help you when you are in trouble.
4. Additional software installation: If you intend to install any non-standard software (i.e., software that is not pre-installed in the standard configuration), check with the hosting company whether the VPS environment that you intend to buy will support the installation.
5. Is a control panel provided: Look out for a standard control panel that should be included in your VPS plan. Popular ones are WHM-cPanel and Plesk. These control panels are of great help in setting up your website(s), uploading files, creating databases, installing SSL certificate, etc.
6. Is there a lock-in period: Look out for their terms of service to check if there is a lock-in period where you have to commit to use their service for a specified period of time. For example, some providers make available reserved instances at much lower cost, if you commit to continue with their service for a duration of 1-3 years. Just avoid such type of plan. They are okay for cloud deployments, but definitely not okay for a one-off VPS purchase. Most hosting companies do provide a no-contract service where you buy the service for 1 month and renew every month. Anytime, you decide to abandon their service, just do not renew.
7. Data center: You can ask your hosting company which data center they will provision your VPS in. Check the website of that data center, do some googling to find out the reputation of the data center. A good data center installs high quality servers & network infrastructure, are equipped with a strong technical team, have very high speed and redundant lines connecting to the internet - all this transforms into good service, better uptime and low latency. You may also like to have your VPS reside in a data center that is closer in proximity to the geographical location of majority of your website audience. Though, sometimes, hosting in a US data center may be a better option due to better quality of infrastructure at lower comparative price points provided by US data centers.
8. Backup Option: Check what backup options you have. While most control panels do have a facility to take a local backup and download in your own computer, you may feel the need for an automated backup solution. Some hosting companies do provide integrated third-party backup service (such as Codeguard, Acronis, and the like) at additional cost. Also check if their control panel allows you to purchase an external cloud backup directly from the backup solution provider and integrate with your VPS.
9. Disaster Recovery: Check that the hosting company does have a backup-restore mechanism in place to take care of their own hardware failures and other disasters that may happen at their data center infrastructure. A good hosting company should have such a mechanism in place.
10. Scalability: Check what options are available to you to scale up (or down) primary resources such as CPU, RAM & storage. It should be possible to scale these resources independently. Also check how quickly they can be deployed.
11. Migration Support: If you are upgrading from a shared hosting environment to a VPS, you will need help with migration. Check if the hosting company provides this support for free.
I have only listed the important pros and cons here. Having read this far, you would already by now be familiar with most of the pros & cons of VPS. So, I am briefly summarizing them here.
Check these services:
What is a Web Hosting Service?
Web Hosting Selection Criteria
Your guide to buying a hosting plan
How to decide between Linux Hosting and Windows Hosting - Which hosting server to opt for?
How to move your Email accounts from one hosting provider to another without losing any mails?
How to resolve the issue of receiving same email message multiple times when using Outlook?
Self Referential Data Structure in C - create a singly linked list
Mosquito Demystified - interesting facts about mosquitoes
Elements of the C Language - Identifiers, Keywords, Data types and Data objects
How to pass Structure as a parameter to a function in C?
Rajeev Kumar is the primary author of How2Lab. He is a B.Tech. from IIT Kanpur with several years of experience in IT education and Software development. He has taught a wide spectrum of people including fresh young talents, students of premier engineering colleges & management institutes, and IT professionals.
Rajeev has founded Computer Solutions & Web Services Worldwide. He has hands-on experience of building variety of websites and business applications, that include - SaaS based erp & e-commerce systems, and cloud deployed operations management software for health-care, manufacturing and other industries.