Where to start with determining where a performance issue exists?

1 min read

If your site/server feels sluggish, the first thing to do is login as root via SSH (you will need an SSH key). Then run the “top” command or the “htop” command. Your load should be less than 1.00 X the number of CPU cores of your server. For example, if you have a two CPU core server, your load should generally be below 2.00. Additionally if top shows 50% or more in id (idle) resources, then your server is healthy and you should be looking within the site. If it shows a high load, or few idle resources, continue below:

All of the metrics you’ll see on top are in the form of percentages. 100% equals 1 CPU core of the server. For example, if you have see mysql taking up 200% and you have a 2 CPU core server, SQL would be taking up all of your CPU resources.

You may see many PHP processes overwhelming your server. If you do, it may mean that a site needs to have it’s number of PHP workers lowered to maintain server stability, or it may mean a plugin is misbehaving and looping.

Generally speaking, when a server falls behind too far, it doesn’t recover easily on it’s own.