A slow VPS can be frustrating. Here is a systematic approach to diagnosing the problem.
1. Check Current Resource Usage
Log in via SSH and run:
-
htop: Immediately see which processes are consuming CPU and RAM. Is it your web server (Apache/nginx)? MySQL? Or an unknown process? -
free -m: Check if you are running out of RAM. If RAM is full, the system uses swap (disk space as memory), which is very slow. -
df -h: Check if your disk is full. A full disk can cause crashes and slowness.
2. Check Server Load Average
Run the top command. Look at the "load average" numbers (1, 5, 15 minutes). If these numbers are consistently higher than the number of CPU cores you have, your server is overloaded.
3. Check MySQL/MariaDB Performance
If your site uses a database, a slow query could be the culprit.
-
Use tools like
mysqltuneror check slow query logs.
4. Check for Software Misconfiguration
-
Apache/nginx: Too many processes, incorrect caching settings.
-
PHP:
php-fpmsettings might be too low for your traffic.
5. DDoS or Malware
-
Run
netstat -ntu | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -nto see if a single IP is making an unusually high number of connections (a sign of an attack).
6. Check with BurjHost
If you cannot find the cause, open a support ticket. While the VPS is unmanaged, BurjHost can check the host node (physical server) to ensure there are no underlying hardware issues.