Article ID: 59 | Category: Web Hosting | 269 views |
Login to cPanel and then under Metrics, click on Resource Usage.
If your website is not hitting any resource limitations, everything will report normal. It is normal to see some issues reported here. However, to know if there really is an issue, you need to drill into the resource usage.
The Current Usage tab will give you live overview of your site as well as hourly snapshots from the past day. You can see if you were hitting your limits previously. At the bottom of this page is a very useful chart. At first, it may not make any sense or could be difficult to read. But here's how to read it. This is using our example website.
There are 6 categories we look at: Speed (CPU), PMEM (RAM), IO (Input/Output operations), EP (Entry Processes), NPROC (Number of Processes), and IOPS (Input/Output Operations per Second). We added color coding and column deliminators in the screenshot so our example is easier to follow. In cPanel, this chart can be hard to read. You'll notice that each resource category has 3 columns - A, L, and F. These stand for Average, Limit, and Fault.
Speed is the percentage of CPU Hz your account is allowed to utilize. For example, you are on a server with a 3.20 GHz CPU. 100% means your account is allowed to utilize 3.20 GHz in a single CPU core. If you see 200%, that means you can utilize 3.20 GHz over 2 CPU cores. If you see 25 in A, that means during that time block you averaged 25% CPU usage. A number in F is the number of times your account maxed its allowed CPU usage.
PMEM is the physical memory your account is allowed to use. Think of this like the memory on your computer. Any programs you run will consume memory. Your website runs programs on the server and this is the amount of server RAM your website is using. This is commonly where we see faults occurring. High memory utilization is caused by inefficient coding or handling of code. For example, WordPress sites with lots of plugins will usually use a large amount of RAM because of everything that has to load on each page reload. Use caching plugins to help reduce utilization. A shows your average RAM usage for that hour. F shows the number of times you ran out of RAM during that hour.
IO is when your website reads and writes from the disk. This is measured in KB/s. IO is really only noticed during sustained disk operations such as uploading and downloading large files. After generating some traffic on our example site, this is what it will look like when you hit the limit:
However, our website was not affected because the quick bursts of data are not noticed by web visitors. This was caused by adding a few plugins to WordPress at the same time.
EP are the number of Entry Processes your account can have. It is also known as "Apache concurrent connections". This value defines how many PHP or CGI scripts you can run at a single time. For example, every PHP page that is accessed by a user will usually generate a single entry process. Many people misinterpret this value as “number of visitors you can have on your website at once”. Whilst it is true that each visitor accessing a PHP page will spawn an entry process, these processes usually end so quickly that it is extremely unlikely that 10 will be spawned concurrently and at a single moment unless you had a significantly large number of simultaneous visitors on your website at once.
NPROC are the number of processes running or threads. It's similar to EPs but includes all processes generated by the account rather than the specific PHP, SSH, or cron jobs. This number is typically very low, even under high activity, as non-PHP tasks execute and complete even more quickly.
IOPS are the number of IO operations per second. Our servers use such fast drives that this limit is highly unlikely to be reached. In this example, you would need to have 1024 things trying to read/write from the server's drive at once. Even on dedicated servers, most customers will never hit any IOPS limitations except under extreme use cases.
If you are constantly seeing out of resource error messages, you will probably need to have your account resource limits increased. Please contact support. In most cases we will gladly add additional resources to accounts at no charge or migrate your account to a server with more available resources.