Knowledge base article
Understanding CloudLinux resource limits
This article will guide you through the CloudLinux resource limits applied to Serversaurus shared hosting
Resource limits
Our shared hosting packages support the following CloudLinux resource limits:
SPEED | CPU speed limit, relative to a single core. Measured by number of cores, our hosting packages start from 100% (1x CPU core). |
PMEM - Physical Memory limit | Physical memory limit (also includes shared memory and disk cache). Measured in MB, our hosting packages start from 2048MB. |
IO | IO throughput - combines both read & write operations. Measured in MBs per second, our hosting packages start with a limit of 8MB per second. |
IOPS | Restricts total number of read/write operations per second. Our packages start with a limit of 1024 operations per second. |
EP - Entry processes | Limit on entry processes. Usually represents max number of concurrent connections to Apache dynamic scripts as well as SSH and cron jobs running simultaneously. Our packages start with a limit of 30 entry processes. |
NPROC - Number of proccess | Max number of processes within LVE, our hosting accounts start from 100 processes. |
Detailed technical information on CloudLinux limits can be found on the Cloudlinux Documentation website.
Errors and faults
Sometimes your website may exhaust resource limits causing an error, below are some explanations of some generic error messages.
Note:
- If the site is limited by CPU or IO, then the site will start responding slower. No error will be returned to the user. If the number of CPU faults is low (e.g around 100 or less per week), the slowdown may only amount to a mere seconds at the time of the fault. If you are only experiencing CPU faults at this rate, this is not a cause for concern.
- If the site is limited by memory or number of processes limits, the user will receive 500 or 503 errors that server cannot execute the script.
- If the site is limited by Entry Processes, then the user will receive a 508 Resource Limit Reached error.
The most common faults you may encounter are CPU faults and Entry Process faults.
CPU Faults
CPU faults can be caused by either an internal website process or an external event. CPU faults are often caused by a process which tries to consume more CPU resources than are available, this process can be initiated as part of the usually website processes or an external event has initiated the process.
Examples of internal website processes which can cause CPU faults:
- A poorly developed plugin or theme
- The website does not cache pages (learn how to configure website cache) and is not loading pages efficiently
- External website software is performing regular website calls to check plugin/theme version and update availability
- There is a software installed which crawls the website looking for certain content types, for example the Broken Link Checker plugin for WordPress
- A lot of processes are being initiated in the backend of the website within a short time frame
- Admin activity on a WordPress website cannot be cached, and if activities are happening like Third-Party Plugin Update Checks, you may find CPU resources are used up
Examples of external events which can cause high CPU usage:
- Brute force attacks
- Bot/crawler is visiting the website and there's no configuration in place to limit bot traffic during visits
- The application has no firewall installed
- A successfully campaign was sent out attracting a influx of visitors within a small time frame
Tips to troubleshoot the cause of CPU faults
Observe the regularity of the faults, if they are irregular and occurring occasionally, this indicates the CPU faults are caused by an external event such as a brute force attack or a successful newsletter campaign. You can reduce/prevent the impact external events have on your website by optimising the application firewall.
You could also verify whether the fault is being caused by attack by first checking the Resource Usage stats in cPanel to identify when the fault(s) occurred, then viewing the website's access logs during the time the CPU fault(s) occurred.
If the faults are occurring regularly at certain intervals or time periods, this indicates an internal website process is not performing efficiently within the allocated resources.
If you notice CPU faults occurring on WordPress website, reference our guide about troubleshooting high CPU on WordPress websites.
Entry Process Faults
If the Entry Process resources of an account are exhausted, the server will return the error 508 Resource Limit Reached to prevent a single site exhausting all Web Server processes on the server. Note: An increased number of CPU faults can cause the amount of entry processes to go up as requests cannot be fulfilled as quickly - consequently the website will return a 508 Resource Limit is Reached error until existing requests are processed (subsequently further entry processes become available once requests have completed processing).
Summary
In most cases, exceeding resource limits at low levels is not a cause for concern. If it does become a concern and can't be solved by troubleshooting and identifying the source of the resource usage, or a higher level of resource usage is required by your website, you can upgrade your hosting subscription to a package which offers further allocations of the resource becoming exhausted.
If you are experiencing CPU Faults or 508 Resource Limit is Reached, although upgrading your subscription would help process requests faster, you may still continue to experience occasional resource limit faults.
Last updated November 30, 2023