Slow server performance is usually caused by one of four things: high processor usage, insufficient free memory, heavy disk activity, or a single resource-hungry application.
Start by finding out which resource is under pressure and which process is using it. Do not stop an unfamiliar system process — that can interrupt essential services or make the server unavailable.
Windows Server
Open Task Manager
Either press Ctrl + Shift + Esc, or open the Start menu, search for Task Manager and open it.
Find the process
- Open the Processes tab.
- Look at the CPU, Memory and Disk columns.
- Click a column heading to sort from highest usage to lowest.
- Identify the process that is consistently using an unusually high share of resources.
A brief spike is normal. Investigate only if the high usage continues and the server is actually affected.
Stop a non-critical process
If you are certain the process is not needed: select it, right-click and choose End task, then confirm. Afterwards check whether CPU, memory or disk usage has dropped and whether performance has improved.
Do not end Windows system processes or services unless you know what they do. If the process belongs to an application, restarting or reconfiguring that application is the better route.
Linux
Check current usage
Connect over SSH and run:
top
This shows active processes with their processor and memory consumption. For output that is easier to read:
htop
If htop is not installed, install it with your distribution's package manager.
Find the process
In the process list, look for consistently high %CPU or %MEM, and note the PID — the numeric process identifier in the first column.
Stop it safely
Send the standard termination signal first:
kill PID
Replace PID with the actual number, for example:
kill 1234
If the process has not stopped after a reasonable time, force it:
kill -9 PID
Use kill -9 only as a last resort: the application gets no chance to shut down cleanly or save pending data.
A few other things worth checking
- Free disk space —
df -h. A full disk produces symptoms that look nothing like a full disk: failing writes, database errors, sites that partly work. - Memory and swap —
free -h. A server that has run out of memory and is swapping heavily feels slow even when the processor is idle. - Disk activity —
iotop, if installed. High load with an idle processor usually means the disk is the bottleneck. - Load average — shown by
top. As a rough guide, a figure consistently above the number of processor cores means work is queuing.
If no single process is to blame
If nothing stands out, the server may simply be reaching its limits regularly. In that case, look at optimising the application's configuration, reviewing scheduled tasks and logs, or increasing the server's resources — see How do I upgrade my server or change plan?
Killing a process is treatment of a symptom. If the same process becomes a problem repeatedly, it is worth finding out why rather than stopping it each time.
If you cannot identify the cause, open a ticket from your client area describing what you have already checked — we can see the load on the server from our side and help narrow it down.