Web HostingDecember 15, 2025 15 views

Understanding the resources of your web hosting

Understanding the resources of your web hosting

Understanding the resources of your web hosting

Reading time: 12 minutes
Difficulty: Beginner ⭐
Prerequisites: Access to cPanel


📋 Introduction

Your web hosting works like a computer shared among several users. To ensure optimal performance for everyone, each account has limited resources: CPU, RAM, disk space, etc.

Understanding these resources allows you to:

  • ✅ Avoid site slowdowns
  • ✅ Diagnose errors (500, 503, 508)
  • ✅ Optimize performance
  • ✅ Choose the offer that suits your needs

🎯 Overview of Resources

Here are the 6 main resources of your hosting:

Resource Icon Role Analogy
CPU Processing power The brain
RAM 🧠 Random Access Memory The working memory
Disk space 💾 File storage The hard drive
Bandwidth 🌐 Monthly traffic The highway
I/O (Input/Output) 📊 Read/write speed The disk speed
Inodes 📁 Number of files The number of drawers

⚡ The CPU (Processor)

What is the CPU?

The CPU (Central Processing Unit) is the "brain" of your hosting. It performs all operations: displaying a page, processing a form, running PHP, querying the database...

How does it work?

Visitor → Requests a page → CPU processes the request → Page displayed

On shared hosting, the CPU is shared among all accounts. Your CPU limit represents the maximum share you can use.

Unit of measurement

Notation Meaning
100% 1 full CPU core
200% 2 CPU cores
50% Half a core

What consumes CPU?

Activity Consumption
Static HTML page 🟢 Very low
Simple PHP page 🟢 Low
WordPress (cached page) 🟢 Low
WordPress (uncached) 🟡 Medium
WooCommerce / PrestaShop 🟠 High
Data Import/Export 🔴 Very high
Unoptimized scripts 🔴 Very high

Symptoms of a saturated CPU

  • ⚠️ Site very slow to load
  • ⚠️ Error 503 "Service Unavailable"
  • ⚠️ Page timeouts
  • ⚠️ CRON tasks that do not end

How to optimize the CPU?

Action Impact
✅ Enable caching (LiteSpeed Cache, WP Super Cache) 🟢🟢🟢 High
✅ Update PHP (8.1, 8.2, 8.3) 🟢🟢 Medium
✅ Disable unnecessary plugins 🟢🟢 Medium
✅ Optimize images 🟢 Low
✅ Reduce external requests 🟢 Low

🧠 The RAM (Random Access Memory)

What is RAM?

The RAM (Random Access Memory) is the working memory of your hosting. It temporarily stores data being processed for ultra-fast access.

Simple analogy

Imagine your work desk:

  • RAM = The space on your desk (what you are currently working on)
  • The hard drive = Your drawers (permanent storage)

The more RAM you have, the more tasks you can process simultaneously without slowing down.

Types of memory

Type Description
Physical memory Actual RAM allocated to your account
Virtual memory RAM + swap space on disk (slower)

What consumes RAM?

Activity Consumption
Static HTML site 🟢 ~10 MB
Basic WordPress 🟡 ~64-128 MB
WordPress + plugins 🟠 ~128-256 MB
WooCommerce 🔴 ~256-512 MB
Large CSV import 🔴 ~512 MB+

Symptoms of a saturated RAM

  • ⚠️ Error 500 "Internal Server Error"
  • ⚠️ Error 503 "Service Unavailable"
  • ⚠️ Message "Allowed memory size exhausted" (PHP)
  • ⚠️ Pages not fully loading

How to optimize RAM?

Action Impact
✅ Gradually increase memory_limit in PHP 🟢🟢 Medium
✅ Disable resource-intensive plugins 🟢🟢🟢 High
✅ Optimize database queries 🟢🟢 Medium
✅ Use object cache (Redis, Memcached) 🟢🟢🟢 High
✅ Limit WordPress revisions 🟢 Low

💾 Disk Space (Storage)

What is disk space?

Disk space represents the total storage capacity of your hosting. It contains:

  • 📁 Your web files (HTML, PHP, CSS, JS)
  • 🖼️ Your media (images, videos, PDF)
  • 🗄️ Your MySQL databases
  • 📧 Your emails
  • 💾 Your backups
  • 📝 Log files

Typical disk space allocation

📊 Example of a 5 GB WordPress site:

├── 📁 Web files (wp-content)     : 3.5 GB (70%)
│   ├── 🖼️ Media/uploads           : 3.0 GB
│   ├── 🔌 Plugins                 : 300 MB
│   └── 🎨 Themes                  : 200 MB
├── 🗄️ Database                    : 500 MB (10%)
├── 📧 Emails                      : 800 MB (16%)
└── 📝 Logs and others             : 200 MB (4%)

Symptoms of a full disk

  • ⚠️ Unable to upload files
  • ⚠️ Emails not being received
  • ⚠️ Errors during updates
  • ⚠️ Inaccessible database
  • ⚠️ Failed backups

How to check used space?

In cPanel, check:

  1. Statistics (right panel) → Disk usage
  2. FilesDisk Usage (folder detail)

How to free up space?

Action Potential gain
✅ Delete old backups 🟢🟢🟢 High
✅ Empty email trash 🟢🟢 Medium
✅ Compress images 🟢🟢 Medium
✅ Delete unused themes/plugins 🟢 Low
✅ Clean up WordPress revisions 🟢 Low
✅ Delete old log files 🟢 Low

🌐 Bandwidth (Traffic)

What is bandwidth?

Bandwidth represents the amount of data transferred between your hosting and visitors during a month.

How is it calculated?

Bandwidth = Number of visitors × Average page size

Example:
- 10,000 visitors/month
- Average page: 2 MB
- Bandwidth = 10,000 × 2 MB = 20 GB/month

What consumes bandwidth

Element Consumption
Simple HTML page 🟢 ~50 KB
Optimized WordPress page 🟢 ~500 KB
Page with non-optimized images 🟠 ~2-5 MB
File download 🔴 File size
Video streaming 🔴🔴 Very high

Symptoms of exhausted bandwidth

  • ⚠️ Site inaccessible (error 509)
  • ⚠️ "Bandwidth Limit Exceeded" message
  • ⚠️ Temporary account suspension

💡 Good news: At OuiHeberg, most plans include generous or unlimited bandwidth.

How to reduce bandwidth?

Action Impact
✅ Enable GZIP compression 🟢🟢🟢 Strong (-70%)
✅ Optimize images (WebP) 🟢🟢🟢 Strong (-50%)
✅ Use a CDN (Cloudflare) 🟢🟢🟢 Strong
✅ Enable browser caching 🟢🟢 Medium
✅ Minify CSS/JS 🟢 Low

📊 I/O (Input/Output)

What is I/O?

I/O (Input/Output) measures the speed of data transfer between RAM and the hard drive. It's the "read/write speed" of your hosting.

Two I/O metrics

Metric Description Unit
I/O (throughput) Amount of transferred data MB/s or KB/s
IOPS Number of operations per second ops/s

What triggers I/O

Activity I/O Impact
Reading static files 🟢 Low
Database queries 🟡 Medium
Backup generation 🔴 High
Data import/export 🔴 High
File indexing 🔴 High
Intensive logging 🟠 Medium-High

Symptoms of saturated I/O

  • ⚠️ Site "lagging" without errors
  • ⚠️ Slow database queries
  • ⚠️ Backups taking hours
  • ⚠️ Variable response times

How to optimize I/O?

Action Impact
✅ Enable database caching 🟢🟢🟢 Strong
✅ Optimize MySQL tables 🟢🟢 Medium
✅ Reduce auto backup frequency 🟢🟢 Medium
✅ Schedule heavy tasks at night 🟢🟢 Medium
✅ Use optimized SQL queries 🟢🟢 Medium

📁 Inodes (Number of Files)

What is an inode?

An inode is a data structure representing a file or directory on the system. In simple terms:

1 inode ≈ 1 file OR 1 directory

Why is it important?

Even with available disk space, if you reach the inode limit, you won't be able to create new files.

What creates many inodes

Source Number of inodes
Basic WordPress ~10,000
WordPress + plugins ~30,000 - 50,000
Uncleaned file cache ~100,000+
Stored emails 1 per email
PHP sessions 1 per session

Symptoms of reaching inode limit

  • ⚠️ "Disk quota exceeded" (even with seemingly available space)
  • ⚠️ Unable to create files
  • ⚠️ Upload errors
  • ⚠️ Blocked emails

How to reduce inodes?

Action Impact
✅ Clear file cache 🟢🟢🟢 Strong
✅ Delete expired PHP sessions 🟢🟢 Medium
✅ Clean up old emails 🟢🟢 Medium
✅ Delete temporary files 🟢🟢 Medium
✅ Use fewer small files 🟢 Low

🔄 Entry Processes (Simultaneous Processes)

What is an Entry Process?

An Entry Process (EP) represents a simultaneous connection handled by your account. Each visitor loading a PHP page temporarily creates an Entry Process.

Beware of misconceptions!

❌ It's NOT ✅ It is
Number of simultaneous visitors Number of simultaneous PHP requests
Number of page views Number of scripts currently running

Concrete example

1 visitor loads 1 WordPress page:
├── index.php starts          → 1 EP
├── Processing (~0.5 second)  → 1 EP
└── Page sent, EP released    → 0 EP

Total time: ~0.5 second

Thus, with a limit of 20 EP and pages loading in 0.5 second, you can theoretically handle 40 visitors per second (around ~144,000 visitors/hour).

Symptoms of reaching EP limit

  • ⚠️ Error 508 "Resource Limit Reached"
  • ⚠️ Site intermittently inaccessible
  • ⚠️ Intermittent errors (sometimes OK, sometimes not)

How to optimize Entry Processes?

Action Impact
✅ Enable caching (serve pages without PHP) 🟢🟢🟢 Strong
✅ Optimize PHP load time 🟢🟢🟢 Strong
✅ Block malicious bots 🟢🟢 Medium
✅ Reduce AJAX calls 🟢🟢 Medium
✅ Use a CDN 🟢🟢 Medium

📈 Check Your Resources in cPanel

Method 1: Statistics Panel

In cPanel, look at the Statistics panel on the right:

Resource Where to find it
Disk space Disk usage
Bandwidth Monthly bandwidth
Emails Email accounts
Databases MySQL databases
Domains Addon domains

Method 2: Resource Usage (CloudLinux)

For CPU, RAM, I/O resources:

  1. In cPanel, go to MetricsResource Usage
  2. Check the summary of the last 24 hours
  3. Click on Details to view the graphs

Reading the graphs

Color Meaning
🟢 Green Normal usage
🟡 Yellow Approaching limit
🔴 Red Limit reached (throttling)

Available tabs

Tab Information
Current Usage Real-time resources
Snapshots Captures during peaks
Processes Scripts consuming the most
DB Queries Problematic MySQL queries

⚠️ Resource-Related Errors

Summary table of errors

Code Message Affected Resource Solution
500 Internal Server Error RAM / PHP Increase memory_limit, check scripts
503 Service Unavailable CPU / RAM Optimize the site, enable cache
508 Resource Limit Reached Entry Processes Enable cache, block bots
509 Bandwidth Exceeded Bandwidth Wait for the next month or upgrade

Diagnosing a 500 error

  1. Check the error logs in cPanel → Metrics → Errors
  2. Check Resource Usage → RAM
  3. Test with a higher memory_limit in php.ini

Diagnosing a 508 error

  1. Go to Resource Usage
  2. Check the Entry Processes
  3. Consult the Snapshots tab to see which script is causing the issue
  4. Block suspicious bots via .htaccess or Imunify360

🚀 Global Optimization: Checklist

✅ Essential Optimizations

□ Enable a caching system (LiteSpeed Cache, WP Super Cache)
□ Update PHP to the latest stable version (8.2 or 8.3)
□ Optimize images (compression, WebP format)
□ Enable GZIP compression
□ Disable unnecessary plugins/extensions
□ Configure a CDN (free Cloudflare)

✅ Advanced Optimizations

□ Optimize the database (repair, optimize tables)
□ Limit WordPress revisions (define('WP_POST_REVISIONS', 5);)
□ Configure browser cache (.htaccess)
□ Minify CSS and JavaScript
□ Load scripts asynchronously (defer, async)
□ Schedule CRON tasks during off-peak hours

✅ Regular Maintenance

□ Regularly clear the cache
□ Delete temporary files
□ Clean up old emails
□ Check error logs
□ Monitor resource usage

📊 Which Plan to Choose?

Comparison of needs by site type

Site Type CPU RAM Storage Recommendation
Simple showcase site 🟢 Low 🟢 512 MB 🟢 1-5 GB Basic offer
WordPress blog 🟢 Low 🟡 1 GB 🟢 5-10 GB Standard offer
WordPress site + plugins 🟡 Medium 🟡 2 GB 🟡 10-20 GB Standard/pro offer
E-commerce (WooCommerce) 🟠 High 🔴 4 GB+ 🟠 20-50 GB Pro/VPS offer
High-traffic site 🔴 High 🔴 4 GB+ Variable VPS/Dedicated

Signs it's time to upgrade

  • 🔴 Frequent 508 errors despite optimization
  • 🔴 CPU constantly at 100%
  • 🔴 Constantly saturated RAM
  • 🔴 Slow site despite cache enabled
  • 🔴 Rapidly growing traffic

📝 Summary

THE 6 KEY RESOURCES:
├── ⚡ CPU         → Processing power (503 error if saturated)
├── 🧠 RAM         → Memory (500 error if saturated)
├── 💾 Storage    → Disk space (uploads blocked if full)
├── 🌐 Bandwidth → Monthly traffic (509 error if exceeded)
├── 📊 I/O         → Disk speed (slowness if saturated)
└── 📁 Inodes      → Number of files (quota error if limit reached)

SIMULTANEOUS PROCESSES:
└── 🔄 Entry Processes → Simultaneous PHP connections (508 error)

WHERE TO CHECK:
├── Statistics Panel (right cPanel)
└── Metrics → Resource Usage

PRIORITY OPTIMIZATIONS:
├── 1. Enable cache
├── 2. Update PHP
├── 3. Optimize images
└── 4. Disable unnecessary plugins

📚 Related Articles

  • 🚀 Optimizing your site's performance on cPanel
  • 📊 Understanding Awstats and Webalizer statistics
  • 🔧 Changing the PHP version on cPanel
  • 💾 Managing backups on cPanel
  • 🛡️ Securing your hosting with Imunify360