CloudLinux and Resource Limit Is Reached Errors


#1

The nature of shared hosting is that you are one of many customers on a single server, which makes for a very economical price point to host your files on the web. You don’t have to pay the steep costs to run a dedicated server, rather the costs are shared amongst a larger group of people. However, in any shared hosting environment, the risk for one bad actor to consume a large amount of resources exists which could negatively affect performance for the other 99% of users on the system. Because of this Reclaim Hosting employs the use of a piece of software called CloudLinux which has resource limitations on a per-account basis to prevent a single account from using too much CPU, memory, or other resources.

The peek resource limitations for our shared hosting account are as follows:

Student Plans: 1GB of RAM, 100% of 1 CPU, 25 open processes
Faculty Plans: 2GB of RAM, 100% of 1 CPU, 40 open processes
Organization Plans: 2GB of RAM, 100% of 1 CPU, 50 open processes

In the vast majority of cases you find these limitations much higher than the standard needs for a user, but there are some cases in which you might find yourself hitting these limits, which manifest themselves in a public error on the site Resource Limit Is Reached: The website is temporarily unable to service your request as it exceeded resource limit. Please try again later.

To best troubleshoot which limits are being reached and why, there is a dedicated section of cPanel labeled CPU and Concurrent Connection Usage

The first thing you will notice in this area is whether your site has been limited at any point in the past 24 hours. If not you will simply get a message that there have been no incidents, however you can still view details on your usage

If there has been errors related to resource limitations you’ll see the number of times over the last 24 hours that the errors occurred as well as links to Details and Snapshots which we’ll cover next

Details provides you line graphs over a period of time to see which resources are being used and by how much, as well as identifying which resource is causing a fault or error on the site. In essence it answers the what of which resource is causing a problem and you can pinpoint to specific times by adjusting the timeframe

In this particular example we can see that over the course of 45 minutes the site reach a maximum number of open processes (Entry Processes) and began to issue errors. This could be a sign of a high amount of traffic, in which case the best course of action is to implement higher levels of caching to keep up with visitors. It could also be a sign of an issue preventing the site from loading in a timely manner, so processes may be getting queued too quickly filling out the resource allotment. To better understand the issue we can look at the Snapshots option in CPU and Concurrent Connection Usage for more details about what scripts were running at the time of the fault:

Snapshots are insights taken at the time a fault has occurred and can help pinpoint if a particular script is consuming the resources or a database query or something else. In this particular case we see many open Apache (httpd) processes pointing to a traffic concern which matches up with the Entry Process limitation. Looking back at the Details screen we see that the user upgraded from a basic student plan to an Organization plan which raised the limit from 25 to 50 and no further errors have presented themselves. While this is a workable fix, an alternative would have been to look into options for caching but in some cases a high level of traffic will simply need a higher resource allocation in which upgrading makes sense.

If you are experiencing the Resource Limit Is Reached and you’re not sure how to diagnose it don’t hesitate to reach out to Reclaim Hosting Support for assistance!