On shared hosting accounts, the same server and its resources are shared by the websites of multiple clients. To ensure that a website does not use all server resources and does not affect the performance of all other websites on this server, restrictions are set. These limitations come in the form of the maximum amount of resources that can be used for CPU, RAM, I/O, inodes and Entry Process by a given hosting account.
This article describes how each of these specific resources affects your website and outlines some situations in which you might want to upgrade your account. The "Resource Usage" module in cPanel will notify you of your account when you reach the limits of any of your account's resources.
❧ CPU
This represents the percentage of CPU available to serve your account requests. These requests range from loading data into memory, processing scripts to deliver content to site visitors, and writing to databases.
The CPU takes care of the rest of your account's resources. Resource availability is shown as a percentage of kernel usage, with the kernel being the central processing unit (CPU), since servers have multiple cores.
If your website uses a database or relies on scripts (like the PHP running WordPress, for example), boosting your account's CPU will really improve its performance. Increasing the CPU will be useful in the following situations:
- Your website has a large number of visits
- Third-party add-ons use resource-intensive third-party add-ons, such as themes and plug-ins
- Your website contains outdated or poorly written code
❧ RAM
Web server RAM (this is the most important memory) serves several purposes. Having more RAM will reduce the number of times the processor has to fetch data from the hard drive. Since data recovery from hard drive is a slower process than data recovery from RAM, website data loaded into RAM will load faster, which will increase your website performance. Also, scripts that write to memory (like PHP) will take longer to run out of space.
The increase in RAM will allow your web server to run faster and handle more complex tasks.
Increasing your RAM limit is generally a good idea if you want your website to run faster, as this will increase your site's overall performance.
However, there is also a temptation to increase your account's RAM when it exceeds its limits, which can cause 500 or 503 errors to appear. But a RAM limit increase is often a symptom of a problem with a misconfigured plugin or script bad. This bad configuration can saturate the memory.
In this case, increasing the account’s RAM will alleviate the problem and may fix it temporarily. But you may encounter the problem again as you get more traffic to your site. Therefore it is recommended to find a solution to the problem on the site.
On the other hand, if the site is very busy and exceeds the current limits, then increasing the RAM is the right solution to solve this problem.
❧ I/O (input/output)
In a hosting account, I/O is the speed of data transfer between your hard drive and RAM (or a visitor to your website, in the case of a large file download). An increase in I/O will of course speed up the process, as it is actually an increase in speed.
I/O is different from the resources mentioned earlier. Don't go over your I/O limits and it won't generate errors. However, if the I/O is insufficient, your website will hang while waiting for data to be transferred from the hard drive to the RAM.
In order to know when an increase in I/O will improve a website, you need to know about website construction. Sites that need to read and write a lot of data (streaming sites, sites with a lot of database records, etc.) will make the most of the increased I/O.
This does not mean that increasing the I/O limit will solve all delay problems. To determine when this is the correct action to take, you will need to study website creation.
❧ Working with files (inodes)
The number of inodes on the computation is calculated through the use of the file. However, inodes are not the same as files. They are data items that Linux-based systems use as a reference for files and directories.
In a simplified way, the number of inodes is the number of files plus the number of directories. In reality, however, multiple inodes can refer to the same file.
Obviously, if you just need to store more files, directories, and emails on your hosting account, then increased file usage (by adding more inodes) will make the problem disappear.
If you have a plugin or script that creates a large number of files or directories in your account, increasing file usage will not solve the problem. In this case, you need to fix the problem with the plugin or the script itself.
❧ Entry Process / EP
This is simply the number of connections your account can handle at one time.
However, connections are not just a visitor to your website. The connection can be:
- By delivering data over HTTP by the website
- processing the "cron" task
It is important to note that only the connection is counted while it is being processed. Once completed, it does not count.
So, if a user accesses your website, an HTTP connection will be established while the home page is loading. Once the page has finished loading, that user is no longer considered a process until they do something else on the website to establish another connection.
It's very easy to know when you need more inputs. The "Resource Usage" module in your cPanel will let you know when you reach the limits of any resource, including entries.