Dr. Roger Ianjamasimanana

How to choose the right server for your website?

By Dr. Roger Ianjamasimanana

1. How to choose the appropriate VPS/VDS server for your website

Choosing the right server for your website involves evaluating a combination of factors tailored to your specific needs. Start by assessing your website’s traffic patterns, resource demands, and growth projections to determine whether a shared hosting, VPS, or a virtual dedicated server best suits your performance and scalability requirements. Consider the operating system and software compatibility. Linux distributions are often favored for their stability, security, and cost-effectiveness, while Windows servers might be necessary for sites relying on Microsoft-specific technologies. This guide will help you to choose the right VPS/VDS for your website. We will also look at some hardware prerequisites based on the traffic levels you expect for your website.

2. What is a private server?

A private server is like having your own personal computer on the internet that no one else can use. It’s a part of a larger, powerful computer that’s divided into smaller sections using special software. Each section, or server, acts like its own independent computer, with its own memory, storage, and operating system. You can use it to host websites, run apps, or store files, and you have complete control over it—just like having your own office where you decide what happens.

What is a VPS server?

Think of a VPS (Virtual Private Server) as renting a room in a big hotel. Even though you’re in the same building as others, your room is yours alone. The resources (CPU, RAM, and storage) are shared with other rooms but are carefully allocated so your room performs well.

What is a VDS server

A VDS (Virtual Dedicated Server) is more like renting an entire apartment within a building. You still share the building, but you have more guaranteed resources (closer to a dedicated server) with better isolation. A VDS often provides stronger performance and reliability compared to a VPS but comes at a higher cost.

3. How to choose your VPS/VDS?

Both VPS and VDS give you more flexibility and privacy than shared hosting, with the main difference being the level of resource allocation and isolation. Before purchasing a VPS/VDS, it's important to define the traffic levels for your website. To help you decide the ressources you need, let's break up the traffic level a website might have into the following categories:

  • Basic traffic: Less than 1,000 monthly visitors (e.g., personal blogs, simple portfolios).
  • Small traffic: 1,000 - 10,000 monthly visitors (e.g., small business websites, low-traffic CMS sites).
  • Medium traffic: 10,000 - 50,000 monthly visitors (e.g., e-commerce stores, moderate-traffic blogs).
  • High traffic: over 50,000 monthly visitors (e.g., large e-commerce platforms, high-traffic applications).

Deciding which VPS/VDS to purchase revolve around the following concepts:

  • CPU and RAM: adequate for your application’s complexity.
  • Storage: sufficient storage for your database and static files.
  • Bandwidth: enough for your anticipated traffic.

When selecting a storage, it's essential to understand the differences between various types of drives. Traditional SATA SSDs offer good performance, but NVMe (Non-Volatile Memory Express) SSDs use the PCIe interface, delivering significantly higher throughput and lower latency. NVMe tend to be more expensive but offer several advantages over traditional SSDs:

  • Speed: NVMe drives provide faster read/write speeds compared to SATA SSDs.
  • Latency: reduced latency leads to quicker data access and improved responsiveness.
  • Efficiency: better performance under high I/O operations, making them ideal for high-traffic websites and resource-intensive applications.
  • Scalability: improved handling of simultaneous data requests, beneficial for growing applications.

It is perfectly fine to start with a lower resource setup and increase it as your website traffic grows. Most hosting providers allow you to upgrade your VPS/VDS without losing your files, but I always advise backing up your data before making any changes. When you purchase a VPS/VDS, you also choose the Operating System that will be installed on it.

4. Choosing the right Operating System for your server

Selecting the appropriate OS for your VPS is vital as it directly affects system performance, security, and functionality. For example, Windows and Linux, two popular choices, have distinct characteristics. Windows is user-friendly and offers broad software support, making it ideal for businesses dependent on Microsoft technologies. Linux, known for its stability, security, and flexibility, is often preferred for web servers and development environments that do not depend on Microsoft technologies. Each OS comes with its own security features, update routines, and community or corporate support, influencing the overall security and efficiency of the VPS.

4.1 Windows as a VPS/VDS Operating System

4.1.1 Overview

Microsoft Windows is widely recognized not only on desktops but also as a server platform. Its user-friendly interface, extensive application support, and compatibility make it a frequent choice for VPS deployments. Many users appreciate Windows for its ease of use and familiarity.

4.1.2 Pros and cons of Windows

Windows offers robust support for technologies like .NET and Microsoft SQL Server, along with compatibility for a broad range of software. This makes it particularly appealing for businesses deeply integrated into the Microsoft ecosystem. However, Windows typically requires more system resources than Linux, which could affect cost efficiency and scalability. Additionally, the need for licensing Windows Server editions can add to expenses.

4.1.3 Suitable use cases for Windows

A Windows server is ideal for hosting websites and applications built on Microsoft technologies such as .NET, ASP.NET, and SQL Server. It also suits scenarios where virtual desktop environments are needed, allowing users to run familiar Windows applications like Microsoft Office, specialized accounting software, and graphic design tools on a remote server.

4.2 Linux as a VPS/VDS Operating System

4.2.1 Brief overview of Linux

Linux is a free and open-source operating system built around the Linux kernel. It is highly regarded for its stability, security, and customizability. Linux enjoys widespread use in server environments due to its robustness and strong community support.

4.2.2 Pros and cons of Linux server

One of the greatest benefits of Linux is that it is free to use. Linux distributions are known for their stability and reliability, which is essential for running critical services. They generally consume fewer resources, leading to better efficiency and scalability, and cost savings. Linux also provides extensive customization possibilities and strong security features. The downsides include a potentially steep learning curve for newcomers, particularly due to reliance on command-line interfaces, and varying compatibility with certain proprietary software.

4.2.3 Suitable use cases for Linux server

Linux server platforms are versatile and well-suited for:

  • Web hosting: aerving as the basis for the LAMP stack (Linux, Apache, MySQL, PHP/Python/Perl).
  • Development environments: providing a robust platform for coding, testing, and deploying software projects.
  • Data analytics: handling large datasets and performing real-time analysis with high stability.
  • Database management: Hosting various types of database systems with reliability.
  • Virtualization and containerization: running containerized applications using Docker, Kubernetes, etc.
  • Cybersecurity: building secure network and system architectures using built-in security tools.
  • Research and IoT: serving as a platform for scientific computing, IoT projects, and educational purposes.

5. System requirements for each Operating System

Before choosing which VPS or VDS specs you need based on your expected traffic value, it’s important to note that the operating system itself requires a portion of the server’s memory and storage. You need to add that on top of the required specs based on your traffic level. I crafted the table below to guide you. Note that the overheads for Linux systems appear smaller than those of Windows since these specs are for Linux OS that do not have a GUI.

Operating System Overheads
Operating System RAM Storage Additional notes
Ubuntu Server 512 MB 2.5 GB Lightweight and optimized for server use.
Debian 256 MB 10 GB Renowned for stability and minimal resource consumption.
CentOS / AlmaLinux / Rocky Linux 512 MB 10 GB RHEL-compatible, enterprise-ready distributions.
openSUSE Leap 512 MB 10 GB Stable release suitable for servers and desktops.
Fedora Server 1 GB 15 GB Cutting-edge software with frequent updates.
Arch Linux 512 MB 2 GB Highly customizable but requires manual setup.
Windows Server 2 GB 32 GB Requires a valid license and GUI adds to overhead.

The following table outlines approximate minimum hardware requirements for each Operating System, taking into account the system overheads mentioned above. These values represent baseline needs and may vary with updates or specific use cases. Of course the storage really depends on your specific use case. They will not be enough if your website is video-based.

Basic traffic (< 1,000 monthly visitors)
Operating System CPU RAM Storage Bandwidth
Ubuntu Server 1 vCPU 1.5 GB 14 GB SSD 100 GB/month
Debian 1 vCPU 1.0 GB 14 GB SSD 100 GB/month
CentOS / AlmaLinux / Rocky Linux 1 vCPU 1.5 GB 16 GB SSD 100 GB/month
openSUSE Leap 1 vCPU 1.5 GB 16 GB SSD 100 GB/month
Fedora Server 1 vCPU 2.0 GB 18 GB SSD 100 GB/month
Arch Linux 1 vCPU 1.5 GB 12 GB SSD 100 GB/month
Windows Server 1 vCPU 3.0 GB 43 GB SSD 100 GB/month
Small traffic (1,000 - 10,000 monthly visitors)
Operating System CPU RAM Storage Bandwidth
Ubuntu Server 1-2 vCPUs 3.0 GB 30 GB SSD 500 GB/month
Debian 1-2 vCPUs 2.0 GB 30 GB SSD 500 GB/month
CentOS / AlmaLinux / Rocky Linux 1-2 vCPUs 3.0 GB 30 GB SSD 500 GB/month
openSUSE Leap 1-2 vCPUs 3.0 GB 30 GB SSD 500 GB/month
Fedora Server 1-2 vCPUs 4.0 GB 33 GB SSD 500 GB/month
Arch Linux 1-2 vCPUs 3.0 GB 22 GB SSD 500 GB/month
Windows Server 1-2 vCPUs 4.0 GB 43 GB SSD 500 GB/month
Medium traffic (10,000 - 50,000 monthly visitors)
Operating System CPU RAM Storage Bandwidth
Ubuntu Server 2-4 vCPUs 6.0 GB 60 GB SSD 1 TB/month
Debian 2-4 vCPUs 4.0 GB 60 GB SSD 1 TB/month
CentOS / AlmaLinux / Rocky Linux 2-4 vCPUs 6.0 GB 60 GB SSD 1 TB/month
openSUSE Leap 2-4 vCPUs 6.0 GB 60 GB SSD 1 TB/month
Fedora Server 2-4 vCPUs 8.0 GB 33 GB SSD 1 TB/month
Arch Linux 2-4 vCPUs 6.0 GB 32 GB SSD 1 TB/month
Windows Server 2-4 vCPUs 8.0 GB 43 GB SSD 1 TB/month
High traffic (> 50,000 monthly visitors)
Operating System CPU RAM Storage Bandwidth
Ubuntu Server 4+ vCPUs 10 GB 150 GB SSD 2 TB/month
Debian 4+ vCPUs 8.0 GB 150 GB SSD 2 TB/month
CentOS / AlmaLinux / Rocky Linux 4+ vCPUs 10 GB 150 GB SSD 2 TB/month
openSUSE Leap 4+ vCPUs 10 GB 150 GB SSD 2 TB/month
Fedora Server 4+ vCPUs 12 GB 33 GB SSD 2 TB/month
Arch Linux 4+ vCPUs 10 GB 52 GB SSD 2 TB/month
Windows Server 4+ vCPUs 12 GB 43 GB SSD 2 TB/month

Notes on system eequirements:

  • Operating system overhead: this includes the base RAM and storage required to run the operating system itself.
  • Software overhead: this accounts for the additional RAM and storage required by essential software such as web servers (e.g., Nginx, Apache, IIS) and databases (e.g., MySQL, PostgreSQL, MSSQL).
  • Website Requirements: the RAM and storage allocated to your website depend on its complexity and traffic level. Higher traffic usually demands more resources to ensure smooth performance.
  • Scalability: these tables provide minimum requirements. Depending on your specific use case, you may need to allocate additional resources to handle peak loads or future growth.
  • Windows server considerations: Windows Server generally requires more resources compared to lightweight Linux distributions due to its GUI and additional services.

Always refer to the official documentation of the operating systems and software you plan to install for the most accurate and up-to-date system requirements. Additionally, monitor your server's performance and resource usage regularly to make informed decisions about scaling your VPS/VDS resources as needed.

feature-top
Readers’ comment
feature-top
Log in to add a comment
🔐 Access
 
Related posts
Generic placeholder image
8 Views Comments