Server benchmarking is a core component of IT infrastructure that can have a significant impact on an organization’s success. In the simplest terms, server benchmarking is the process of measuring the performance of a server against a set of standardized metrics. It enables IT teams to identify areas of weakness and optimize server performance, which ultimately improves overall efficiency and productivity.
What is Server Benchmarking?
Server benchmarking is a process that evaluates the performance of a server or VPS by measuring its response time, throughput, and other parameters. It is a method used to determine how well a server or VPS performs under different workloads, and it can help identify areas where improvements can be made.
Server benchmarking is essential for ensuring optimal server performance, as it allows you to compare the performance of different servers, VPSs, or server configurations and make informed decisions about which one to choose. There are various tools and VPS benchmarking scripts available that can help you to conduct server benchmarking, such as YABS (Yet Another Benchmark Script). By running server benchmarking tests, you can ensure that your server or VPS can handle the workload it’s intended for, and deliver a high level of server performance to your users.
This is an accompanying post to the Art and Science of VPS Benchmarks.
Why is Server Benchmarking Important?
Server benchmarking is a crucial process when it comes to assessing the performance of new servers. It involves testing the servers to determine their capabilities, limitations, and overall performance. Benchmarking allows users to compare different servers to determine which one is capable of meeting their needs and requirements.
This is especially important when it comes to virtual private servers (VPS) and server hosting, where performance is crucial to the success of the enterprise. VPS benchmarking scripts such as YABS (Yet Another Bench Script) can help users determine the performance of their servers by running a set of tests that simulate real-world usage scenarios. By benchmarking new servers, users can ensure that their server performance is optimized for their specific needs and that they are getting the most out of their investment.
Types of Benchmarking: Different Ways to Measure Server Performance
When it comes to measuring and improving server performance, benchmarking is a crucial tool. Benchmarking allows you to compare your server’s performance to industry standards or to other servers that are similar to yours. There are different types of benchmarking that you can use, depending on what you want to measure:
- Internal benchmarking: Measures the performance of different components within your server. This type of benchmarking is useful for identifying bottlenecks and improving the overall performance of your server.
- Competitive benchmarking: Compares your server’s performance to that of your competitors. This type of benchmarking can help you identify areas where you need to improve in order to stay competitive.
- Functional benchmarking: Measures how well your server performs specific tasks or functions. VPS benchmarking scripts such as YABS (Yet Another Benchmark Script) can help you with functional benchmarking.
Regardless of which type of benchmarking you use, it’s important to keep in mind that server benchmarking is an ongoing process. By regularly measuring and improving your server’s performance, you can ensure that it continues to meet your needs and the needs of your users.
Introduction to My VPS Journey
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 learned about different types of virtual private servers, how to benchmark them, installing the operating system, how to configure and secure 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 keep occurring in the subsequent blog posts in this series.
What is a Virtual Private Server (VPS)?
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.
Types of VPS Based on Virtualization Technology
There are different types of VPS based on the underlying virtualization technology used:
- 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.
- 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.
- 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.
Popular VPS Virtualization Technologies
- 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.
Specialized VPS Types
- 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.
Specialized Use Cases for Virtual Private Servers
- 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.
- 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.
- 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.
- 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.
- 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.
Tools for Server Benchmarking
Server benchmarking plays a crucial role in ensuring optimal server performance. It involves running various tests on a server to measure its performance and identify any bottlenecks. To conduct server benchmarking, you need to use specific tools designed for this purpose.
There are two types of tools for benchmarking:
Software Tools
Software tools include VPS benchmarking scripts, which can be used to test VPS environments for performance and stability. These scripts typically run a series of tests, including CPU, memory, and disk I/O. One popular script used for VPS benchmarking is Yet Another Benchmark Script (YABS).
Hardware Tools
Hardware tools are physical devices that can be attached to a server to measure its performance. Some commonly used hardware tools include network analyzers, disk performance tools, and CPU stress testing tools.
YABS: Yet Another Benchmarking Script
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
Best Practices for Server Benchmarking
Server benchmarking is the process of testing the performance of a server and measuring its capacity to handle different types of workloads. This is an important task to perform before deploying any application on a server or when upgrading the hardware of a server.
Some best practices for server benchmarking to improve accuracy and reliability of the results include:
- Test with realistic workloads: One of the most important things to keep in mind while performing server benchmarking is to test the server under realistic workloads. This means that the benchmark should simulate the type of workloads that the server will be handling in production.
- Use consistent configurations: Another important factor to consider is to use the same hardware and software configurations for both the benchmark and production environments to ensure the results are accurate and reliable.
- Choose appropriate tools: YABS (Yet Another Benchmark Script) is a popular tool used for server benchmarking, and it can be used to test various aspects of server performance, including CPU, memory, disk I/O, and network performance.
- Regular benchmarking: Server benchmarking is an ongoing process. By regularly measuring and improving your server’s performance, you can ensure that it continues to meet your needs and the needs of your users.
VPS and Cloud Service Providers
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 |
Mid-sized VPS Providers
Here’s a tabulated list of VPS providers and cloud server providers suitable for startups or small businesses, excluding enterprise-level providers:
| 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 |
Budget-Friendly VPS Providers
| 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 |
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.
My Experience with VPS Benchmarks
Between Mid-2019 and End 2022, I tested several Virtual Private Servers (VPS) for own use or for reviews. The tools I used were YABS (Yet Another Benchmarking Script), bench.monster and similar benchmark tools. I also ran some tests for network testing, using tools ranging from Speedtest to iperf. What began as a curiosity (what is this beast called server benchmarking?) turned into a hobby of sorts- and I learnt a lot along the way. Update: As on January ’23, I have decided to step away from running benchmarks of servers.
If I do look at a specific plan from a provider, I will focus on a wider review (customer service, ease of ordering, payment terms, etc.). And I mention If. For all intents and purposes, this page should be considered as an index or archive of the server benchmarks and reviews.
-Amar Vyas, Jun ’23
I encourage you to visit the directory of YABS for multitude of servers on the LowEndSpirit site.
Types of Servers Benchmarked or Reviewed
I. KVM VPS
| Service | Details |
|---|---|
| Greencloud VPS – 2020 (Discontinued) and 2021 offers (Singapore, Aug 2021 – Present) | PHP Friends (Germany, Oct 2019 – Oct 2021) Avoro (Germany, Jan 2020 – Jul 2020) Note: PHP-Friends and Avoro have merged as of 2022. |
| Hosthatch (London, BF 2019 – 1 Yr) | Hostslick (Netherlands, BF 2019 – 1 Yr) |
| MaxKVM (Singapore, Sept – Nov 2020) | ExtraVM (Dallas, Jan – Mar 2020) |
| Quantumcore (Australia, Nov 2019 – 1 Yr) | Ionswitch (Dallas, Dec 2019 – Oct 2021) |
| TinyKVM (Dallas, USA, Aug 2019 – Aug 2020) | Terrahost, Norway (LXC) (2021, Provider got acquired by Epic) |
| FlowVPS (Australia, Q1 2021) | Inception Hosting (UK, 2021) |
| Racknerd (Chicago, USA, BF 2020) | Virmach (Chicago + New York, 2020) (New Jersey, USA, Nov 2020 – Present) |
II. VPS Review Requested by Providers
| Service | Description |
|---|---|
| Nexaracks (Phoenix, April 2020) and (Mumbai, May 2020) | Servers Galore (Melbourne, AU Dec 2020) Note: Provider out of business |
| Webhorizon (Singapore, Dec 2020) | Webhosting24 – VPS Singapore and Munich, 2021 |
| KTS24 (Netherlands, July 2020) | NATVPS, UK (2021) |
III. Cloud VPS
| Service | Description |
|---|---|
| IntoVPS (Cluj, Romania, 2019) Updated Feb ’23 | Datawest (Perth, Australia, 2020) |
| Dade2 Cloud (Iceland, 2020) | Lunanode (Toronto, Canada, 2020) |
| ReadyDedis (3 GB, Mumbai) (2021) 1 GB VPS Mumbai (Mid-2020) | Stromonic Mumbai (Now Leapswitch) VPS-1 (Mid-2021-) VPS-2 (End-2021-) |
| Cloudcone USA (Dec 2022-) | Advin Servers, Mumbai (Dec 2022- ) |
IV. NATs
| Service | Description |
|---|---|
| Gullo’s (Finland, Bulgaria, Germany) Discontinued Nov. 2021 | Freebox Note: Service discontinued by provider |
| MrVM (Mumbai) (August 2021-Mar 2022) | Webhorizon (Singapore) (April 2021-Present) |
| NATVPS UK (2021, testing only) France (2023) | Wishosting, France |
V. Storage Servers
| Service | Description |
|---|---|
| Servarica Polar Bear Storage 2 TB Canada (Nov 2020-Nov 2021) | Inception Hosting 500 GB (Nov 2020-April 2022) 1 TB Storage VPS (Nov 2020-April 2021) |
| GreencloudVPS, 1 TB, Singapore (Nov 2021-Nov 2024) | Hosthatch 2 TB storage, London (Nov 2020-Nov 2024) 500 GB Storage Stockholm (Nov 2021-Nov 2024) |
Conclusion: The Evolution of Server Benchmarking
Server benchmarking is a crucial process for organizations that want to optimize their server performance and ensure that their applications run smoothly. By testing and measuring different aspects of server performance, including CPU, memory, and disk I/O, organizations can identify and address performance bottlenecks and make informed decisions about hardware and software upgrades.
While server benchmarking may seem complex and technical, it is essential for businesses that want to stay competitive in today’s data-driven economy. By understanding the basics of server benchmarking and working with experienced professionals, organizations can ensure they are getting the most out of their server infrastructure and delivering the best possible user experience to their customers.
The landscape of VPS providers continues to evolve, with new technologies and offerings emerging regularly. As we’ve seen from the extensive benchmarks and reviews conducted over the years, there’s no one-size-fits-all solution. The best VPS for your needs will depend on your specific requirements, budget, and geographic location.
Tools like YABS (Yet Another Benchmarking Script) provide valuable insights into server performance, but remember that benchmarks are only one aspect of evaluating a VPS. Other factors such as reliability, support quality, and network stability are equally important considerations when choosing a hosting provider.
Notes:
a. I have discontinued most of the services listed on this page.
b. Some benchmarks or services were for testing purposes only, and not a reflection of long term performance of the VPS or the provider. For a complete review, the additional criteria that need to be considered include:
- Ease of ordering and billing system
- Time for activation after payment
- Network configuration, custom ISO for operating system installation
- Network performance – iPerf and speedtest
- Troubleshooting : FAQ and customer support
- Overall robustness of the service and the provider
c. Some providers such as Nexusbytes, HostDoc, Hostsolutions, and Stockservers are no longer in business. Others have merged (PHP Friends and Avoro) or have been acquired (e.g. Wishosting).
d. If I have multiple benchmarks for those servers, I will merge them into a single post. I have added notes for the status of the respective service or provider as on June, 2023.
e. This information is on a best effort basis, particularly for providers.
f. If you would like to know more about types of VPS, visit this post. To learn about the different types of benchmarks that are run on servers by hobbyists and admins, visit this post.