Server High Load

Server overloaded, websites slow, or CPU and memory suddenly too high?

A server under heavy load can stay technically online while becoming almost unusable. Restarting it may restore performance temporarily — it won’t explain why the load increased. We find which process, service or workload is consuming the resources, and why.

Please do not include passwords, private SSH keys or other permanent credentials here. If access is needed, we'll agree on a secure way to provide it. Have screenshots or logs? You can attach them by replying to our confirmation email.

What Does “High Load” Actually Mean?

Load average isn’t just CPU usage

A server can show high load because processes are actively using CPU, waiting for CPU time, waiting for disk I/O, or blocked by storage. A load average of 10 doesn’t mean the same thing on every server — it depends on core count, I/O wait, memory, swap and the actual workload. We look at the complete resource picture, not a single number.

slow websites502 / 504 errorsslow SSH unresponsive control panelMySQL CPU spikesPHP-FPM memory spikes growing swapintermittent downtimeslow email delivery
CPU-Bound Problems

When the processor is the bottleneck

High CPU Overall

PHP, MySQL, cron/backup jobs, malware, cryptominers, bot traffic or badly written code. We identify what’s consuming CPU before recommending more of it.

One Process at 100%

We check who started it, how long it’s run, what it touches, whether it’s legitimate — killing it helps short-term, but knowing why it exists matters more.

All Cores Saturated

Traffic surge, PHP-FPM saturation, a database-heavy workload, a maintenance job, or a compromised server — we check whether the load is actually expected.

The Insight Most People Miss

High load, low CPU? It’s probably disk I/O

A high load average with relatively low CPU usage usually points to processes waiting on storage, not the processor. Common causes: overloaded disks, heavy database activity, backups, RAID operations, filesystem problems, or excessive swap. If the underlying storage is the actual bottleneck, adding CPU or RAM won’t help much.

Memory Pressure

Swap, OOM events and what gets killed

Swap Usage

Some swap is normal. The problem is active swapping — large amounts of memory moving between RAM and disk, which can badly hurt performance.

Linux OOM Killer

Under severe memory pressure, the kernel terminates a process to keep the system alive — often MySQL, PHP-FPM or Redis. We check the logs for what actually happened.

Restarting Without a Cause

Bringing a killed service back up without fixing the memory problem just delays the next failure.

PHP-FPM Tuning

Too many workers, or too few

Too Many Workers

If each PHP process uses significant RAM, allowing hundreds of simultaneous workers can destabilise the whole server. We check pm.max_children and related settings against actual process memory.

Too Few Workers

Requests queue even when CPU and RAM are free — slow sites, 504 errors, “max_children reached” warnings during traffic spikes.

Tuning is never just “reduce the limits” — it has to match the workload and the RAM actually available.

Database Load

MySQL, MariaDB and Redis

MySQL High CPU

Slow queries, missing indexes, large table scans, locks, high connection count, or poorly configured memory.

Too Many Connections

Raising max_connections isn’t automatically the fix — more connections mean more memory, which can make things worse.

Redis Memory

No maxmemory limit lets Redis eat available RAM meant for MySQL and PHP. Redis should help performance, not compete for it.

WordPress & WooCommerce

Often the real source of the load

Poorly written plugins, wp-cron, backup plugins, security scans, broken cache, XML-RPC abuse, REST API traffic, admin-ajax requests and bots. WooCommerce adds checkout activity, scheduled actions and inventory operations on top.

WordPress PHP-FPM MySQL / MariaDB Redis Server Load
Scheduled & Background Work

Backups, RAID and cron jobs

Backups

Compression of large sites/databases can spike CPU, I/O and memory. A backup shouldn’t repeatedly take production offline.

RAID Rebuild / Resync

On dedicated servers, rebuilds generate real I/O. The server stays up but everything gets slower until it finishes.

Cron Jobs

Predictable load spikes at fixed times — backups, DB optimisation, log rotation, malware scans, imports.

Traffic & Security

When the load isn’t organic

Bots & Crawlers

Search bots, AI crawlers, SEO tools, scanners, aggressive scraping — restricted via NGINX/Apache, firewall, Fail2Ban or Cloudflare.

DDoS / Abnormal Traffic

Sudden spikes may be an attack, not demand — sometimes needs provider-level or Cloudflare protection, not just server config.

Brute-Force

Repeated login attempts against SSH, WordPress, email or panels — Fail2Ban and firewall restrictions.

Malware / Cryptominers

Unknown processes, restarting after being killed, suspicious cron — sometimes a clean rebuild is safer than continuing to trust the server.

Server security services →

On a VPS

CPU steal time — a bottleneck outside your control

Steal time is what Linux reports when your VM is waiting for the physical host’s CPU. Consistently high steal time points to contention on the virtualization host, not a problem inside your VPS — tuning PHP or MySQL settings won’t fix an overloaded physical host. In these cases, provider intervention or migration may be the actual answer.

Providers we work with →

Scope

One website, or all of them?

One Website Is the Cause

We correlate logs, PHP processes, database activity and traffic per domain — usually a traffic spike, broken plugin, malware or bots.

All Websites Slow at Once

Points to a shared component: CPU/memory exhaustion, disk I/O, MySQL, PHP-FPM, a backup or RAID job, or the provider infrastructure itself.

After a Change

Migration, PHP upgrade or MySQL/MariaDB changes can all shift resource behaviour — different CPU/storage performance, missing Redis, altered PHP-FPM pools, or database settings copied from a different server without adjusting for available resources.

Should I Just Reboot?

It can restore performance quickly, but it also erases the evidence. Where possible, we capture the process list, CPU/memory/swap/I/O and logs first. If the server is genuinely unusable, a reboot may still be necessary — the important part is figuring out the cause afterward.

Should I Upgrade the Server?

Maybe — but not before finding the bottleneck

A larger server helps when the workload genuinely needs more CPU, RAM or storage performance. It won’t fix broken application code, a runaway process, slow queries, malware, bot traffic, a full disk, bad Redis config or excessive backup activity.

We measure the problem before recommending more infrastructure.

What to Send Us

Faster diagnosis starts with the right details

hosting providerserver IP / hostnameLinux distribution CPU / RAM specsaffected sites/serviceswhen it started constant or intermittent?recent changestop / htop / free / iostat output
Please don’t send root, control panel or database passwords, or private SSH keys, in the initial request. If access is needed, we’ll tell you exactly what’s required.
Pricing

Standard investigation, unless production is already down

€55/ hour

Standard Support — normal Linux performance investigation, not yet a critical outage.

€95/ hour

Emergency Support — if the high load is causing a critical production outage.

€125/ hour

Out-of-Hours Emergency — evenings, weekends, holidays.

Priority and emergency work is subject to administrator availability. Full pricing →

The Key Distinction

High load doesn’t always mean you need a bigger server

The most important part of performance troubleshooting is separating a capacity problem from a configuration or application problem. Sometimes the answer is more CPU or RAM. Often it’s one slow query, one PHP process, one plugin, one backup job, one aggressive crawler, one compromised website, or one wrong memory limit.

Understanding the difference avoids unnecessary infrastructure costs — and recurring outages that a bigger server would never have fixed anyway.
Linux Performance Experience Since 2004

More than 22 years of practical experience with Linux servers, hosting infrastructure, PHP, MySQL, MariaDB, Redis, WordPress and production workloads.

Measure the bottleneck, identify what’s consuming the resources, and correct the underlying cause wherever possible.

Server acting up right now?

Tell us what’s happening — we’ll help you find the actual bottleneck.

Request Support → Contact Us