In this post, I provide an update on Virtual Private Servers or VPS benchmarks and reviews for on this site. Over the past 18 months or so, 4 years, I have run benchmarks on multiple VPS’es ranging from Kernel Virtual Machine (KVM) to storage servers

Introduction

In 2019, I subscribed to my first VPS or virtual private server plan. I had very little knowledge about VPS, as well as server management back then. Over the years, I learnt about the following (in no particular order) different types of virtual private servers, how to benchmark them, installing the operating system, how to configure and securing them, scripts for server maintenance, and monitoring the uptime. In the following series of blogs, I will write about some of these aspects. But I wanted to start with this basic introduction to virtual private servers, as a starting point. The different types of VPS mentioned below me keep occurring in the subsequent blog posts in this series. I am publishing this post in June 2023. However, the knowledge that I have gained spans between the years 2019 and 2023.
Specifications of the first set of VPS plans I had subscribed to
Specifications of the first set of VPS plans I had subscribed

What is a Virtual Private Server?

A Virtual Private Server (VPS) is a type of hosting service that provides virtualized server resources within a shared physical server environment. It offers more control, flexibility, and resources compared to shared hosting, while being more cost-effective than a dedicated server. In a VPS environment, a single physical server is divided into multiple virtual servers, each running its own operating system and having dedicated resources such as CPU, RAM, and storage. These virtual servers operate independently of each other, providing isolation and better performance.
graph showing RAM usage in a VPS
graph showing RAM usage in a VPS
There are different types of VPS based on the underlying virtualization technology used:
    1. Full Virtualization (Hypervisor-based): In this type, a hypervisor, such as VMware or Xen, is used to create and manage multiple virtual servers. Each virtual server operates as if it has its own physical hardware, enabling different operating systems and customized configurations.
    1. Para-Virtualization: This type of virtualization, as implemented by Xen, allows virtual servers to run directly on the host hardware without emulation. The guest operating systems are modified to be aware that they are running on a virtual machine, resulting in improved performance.
    1. Containerization (Operating System-level Virtualization): Container-based VPS, like Docker or LXC (Linux Containers), share the host operating system’s kernel and libraries while providing isolated environments for running applications. Containers are lightweight and offer efficient resource utilization but may have limitations on running different operating systems.
KVM (Kernel-based Virtual Machine): A Linux kernel module that allows a host machine to run multiple, isolated virtual environments. It’s used in situations requiring fully isolated and customizable environments, like hosting websites, mail servers, and more. LXC (Linux Containers): Provides operating system-level virtualization, it’s more like an enhanced chroot rather than full virtualization. It’s often used in situations requiring speed and efficiency, like testing environments, continuous integration workflows, and low-intensity web servers. OpenVZ (OVZ): A Linux-based virtualization platform providing containerization. It’s suitable for hosting environments where various servers run the same operating system, and is often used in web hosting. Xen: A hypervisor providing services that allow multiple computer operating systems to execute on the same computer hardware concurrently. Xen is typically used in enterprise environments, and also in cloud computing scenarios due to its stability and performance. VMWare: A commercial and proprietary hypervisor, commonly used in enterprise environments due to its advanced features, such as live migration, high availability, and robust resource management. NAT (Network Address Translation) VPS: A type of VPS that shares its host’s IP address, commonly used for hosting non-critical applications due to its cost-effectiveness. Storage VPS: A VPS designed with a focus on storage rather than compute resources. This type is commonly used for backups, file storage, and hosting large datasets. Dedicated VPS: Offers users full control over the server with dedicated resources, and it’s used for hosting high-traffic websites, databases, game servers, and other resource-intensive applications. Cloud VPS: A scalable, virtualized servers available in the cloud. This type is often used in dynamic hosting environments where workloads fluctuate, like e-commerce sites with variable demand. GPU-based VPS: VPS that provides access to GPU resources, which is typically used for applications requiring heavy graphical processing or machine learning workloads. As for the most popular virtualization technology offered by web hosting companies since 2005, this varies depending on the period: 2005-2010: Xen was commonly used due to its open-source nature and robust feature set. 2010-2015: KVM and OpenVZ became more popular due to their improved performance and efficiency. 2015-2020: Cloud VPS solutions began to dominate, with many hosting companies building their platforms on top of cloud providers like AWS, Azure, or Google Cloud. KVM continued to be popular due to its balance between performance and isolation. Please note that the popularity of these technologies can vary based on the specific needs of the customer and the offerings of the hosting provider.
VPS Control panel, circa 2020
VPS Control panel, circa 2020

Some Specialized use cases for Virtual Private Servers

    1. Seedbox: A seedbox is a VPS optimized for torrenting and high-speed file sharing. It allows users to remotely download and seed torrents, offering fast and secure transfers. Seedboxes often come with pre-installed torrent clients and can be accessed via web interfaces or FTP connections.
    1. VPN Server: A VPS can be used to set up a VPN (Virtual Private Network) server. With this configuration, you can establish a secure connection and encrypt your internet traffic, providing privacy and anonymity. A VPS-based VPN server allows you to remotely access resources, bypass geo-restrictions, and enhance online security.
    1. Firewall Server: A VPS can be dedicated to running a firewall, such as pfSense or iptables, for network security. This setup provides robust protection against unauthorized access, intrusion attempts, and malware. By configuring the VPS as a firewall server, you can control and monitor network traffic effectively.
    1. File Hosting and Sharing: A VPS can be utilized as a file hosting and sharing platform. With the appropriate software, you can create your own private cloud storage service, allowing you to store, organize, and share files securely with colleagues or clients. You have full control over file access permissions and can customize the platform to suit your specific needs.
    1. Game Server Hosting: VPS can be used to host game servers for various online multiplayer games. By setting up a VPS as a game server, you can provide a stable and dedicated environment for gamers to connect and play together. This allows for better performance, customization options, and administrative control compared to shared hosting alternatives.

Storage Servers

A storage server refers to a dedicated server or a specialized server configuration designed primarily for storage purposes. It is not a specific type of VPS but rather a distinct server setup that focuses on providing ample storage capacity. A storage server is typically equipped with a large amount of storage capacity, often in the form of hard drives or solid-state drives (SSDs). It is commonly used for storing and managing large amounts of data, such as files, databases, backups, or media files. While a VPS offers a combination of computing resources (CPU, RAM) and storage, a storage server emphasizes storage capabilities and may not provide the same level of compute power as a typical VPS. Storage servers can be utilized in conjunction with VPS setups to offload storage-intensive tasks or to provide additional storage capacity for virtual servers. This can be beneficial when the VPS’s allocated storage is insufficient for specific needs or when separate storage management is desired for scalability and data management purposes. In summary, a storage server is not a type of VPS itself, but it can be used alongside VPS setups to provide specialized storage capabilities within a hosting environment.

50 VPS Benchmarks and counting

Over the past several months, the servers on which I have done a review (or just run BM tests) have following characteristics: -Virtualization varies from “cloud” hypervisor to KVM, LXC to OVZ, and NAT to VMWare. -Their locations span across 4 continents. -Majority of them are KVM VPS’es with typically 1 GB of RAM.
Feature image for tag "Linux Server Behcnmark and Review". Blog of Amar Vyas.
Review and Benchmark of Linux VPS

Learning less by conducting more VPS benchmarks and reviews

If you are interested in economics, you might be familiar with the term Law of Diminishing Marginal Utility. The Law simply means, the incremental benefit from each additional unit of a good or service reduces as the number of such goods or services increase. In this case, with every additional VPS benchmark or review, my learning is reducing. To use two more terms from economics: perishable commodity, and opportunity cost: The perishable commodities in this case are both my time and the money spent. Majority of the reviews are for VPS’es that I paid for. Unless mentioned as a ‘test review’ in the table on the index page for VPS reviews, I have paid for these servers. The time has come to start consolidating the network of servers that has built up.

YABS

On October 7 ,2019 user MasonR posted on LowEndTalk about this benchmarking script that he started working on.  As per him, “The goal of the script was to make something slightly different than what’s already out there, which incorporates benchmark tests that we find ourselves conducting quite often, namely dd, iperf, and Geekbench.” Below you will find the command for the script (note: sudo privileges, or installation of any additional software not required)
Command: curl -s https://raw.githubusercontent.com/masonr/yet-another-bench-script/master/yabs.sh | bash

List of VPS and Cloud Service Providers

Here’s a tabulated list of enterprise-level cloud providers:
Provider Description Website
Google Cloud Scalable cloud infrastructure and AI/ML capabilities cloud.google.com
Microsoft Azure Integrated cloud services and solutions azure.microsoft.com
Amazon Web Services Widely adopted cloud platform with extensive services aws.amazon.com
Alibaba Cloud Comprehensive suite of cloud products and services alibabacloud.com
IBM Cloud Hybrid cloud solutions and enterprise-grade services ibm.com/cloud
Oracle Cloud Enterprise cloud infrastructure and applications oracle.com/cloud
VMware Cloud Hybrid cloud solutions and virtualization technologies cloud.vmware.com
Red Hat OpenShift Container platform and cloud services by Red Hat openshift.com
Tencent Cloud Robust cloud services and solutions by Tencent cloud.tencent.com
List of enterprise level cloud server providers

Mid-sized VPS providers

Certainly! Here’s a tabulated list of VPS providers and cloud server providers suitable for startups or small businesses, excluding enterprise-level providers like Google Cloud, Alibaba Cloud, Tencent/Baidu, Azure, Oracle, and AWS:
Provider Description Website
DigitalOcean Developer-friendly cloud platform with scalable VPS hosting digitalocean.com
Linode Affordable cloud servers with good performance linode.com
Vultr High-performance cloud servers at competitive prices vultr.com
UpCloud Reliable and fast cloud servers with great uptime upcloud.com
Hetzner Cloud Budget-friendly cloud hosting with powerful features hetzner.com/cloud
Scaleway Flexible cloud infrastructure and VPS hosting scaleway.com
Kamatera Scalable cloud infrastructure for businesses kamatera.com
Contabo Affordable VPS and cloud hosting services contabo.com
OVHcloud Versatile cloud solutions with a global network ovhcloud.com
DreamHost Cloud Managed cloud services with high-performance servers dreamhost.com/cloud
List of mid-tier level cloud server providers, catering to mid size businesses
Please note that while these providers are suitable for startups and small businesses, it’s essential to evaluate their specific offerings, pricing, features, and support to determine the best fit for your business requirements.

List of smaller hosting providers in the budget-friendly space:

Provider Description Website
BuyVM Provider of affordable VPS hosting services with a focus on low-cost plans and high-quality support buyvm.net
HostHatch Offers low-cost VPS hosting solutions with various locations worldwide hosthatch.com
HostSailor Budget-friendly VPS and dedicated server hosting provider with global locations hostsailor.com
Hostodo Offers low-cost VPS and dedicated server solutions hostodo.com
ImpactVPS Provides affordable VPS hosting services impactvps.com
HostUS Offers a range of hosting services, including VPS and shared hosting, at affordable prices hostus.us
Shock Hosting Budget-friendly hosting provider with a range of shared, VPS, and dedicated server solutions shockhosting.net
GreenCloudVPS Provides VPS hosting services with a focus on environmentally friendly solutions greencloudvps.com
VirMach Offers affordable VPS and dedicated server hosting solutions virmach.com
LetBox Provider of low-cost VPS and dedicated servers with multiple locations letbox.com
SparkVPS Offers budget-friendly VPS hosting with SSD storage and scalable plans sparkvps.com
RamNode Provides affordable SSD-based VPS hosting services ramnode.com
List of server providers catering to mid and small businesses

I had even created a dedicated page on this site where you can find an index of reviews and benchmarks.You will also see a mention of different tests that I run while benchmarking a machine. These include YABS, bench.sh, bench.monster, (or bench.sh). In particular, my interest also lies in checking network speeds or connectivity from Bengaluru, to respective server locations.


This post was updated on 13 June 2023