This site/page has used all available php / apache processes
Some people see an error page on their website with the following contents:
This site / page has used all avaialble php / apache processes allowed on free hosting.
Refreshing the page once the amount of apache / php processes are reduced will cause the site to work
We would recommend upgrading your hosting account at IFastNet Premium hosting accounts, premium hosting accounts have MUCH higher resources dedicated to them.
What do these PHP / Apache processes mean?
Like the error message says, this error is caused by too many PHP/Apache processes running on your account at the same time.
Every time a request comes in to your website, it may cause PHP code on your website to be executed. To execute this code, a new process is started to execute the code. When your code is done executing and the page has been returned, the process stops itself.
Every running process takes a some CPU power and memory, even if it's not doing anything. So having many PHP processes running at the same time negatively affects the speed of the server.
Why are there errors about PHP/Apache processes?
Because too many processes can overload the server, InfinityFree has two separate limits on process usage.
- A limit on how many processes you can create per day. This is better known as the Entry Process Limit.
- A limit on how many processes you can use at any single time. This limit is what causes the error message above.
Why do I see this error on my website?
The short answer is simple: there are too many PHP scripts being executed on your account at the same time.
The reason why you have so many PHP scripts running at the same time highly various, but is often one or more of the following issues.
- Too many simultaneous visitors. If many people are trying to open a page on your website at the same time, this typically launches a lot of PHP code as well.
- Website pages take too long to load. A PHP/Apache process is freed whenever a script finishes executing. If your code completes in 1 second, it won't use up any processes after that 1 second. If your code takes 10 seconds to complete, it uses up processes for much longer.
- Too many PHP scripts are loaded per page view. Most website software requires one PHP script to be executed per page view (the main HTML content), and includes static content like images and styles as static links. Some website software post-processes such static files for things like compression, resizing, combining, etc. If one page embeds 50 images, which are each processed by a PHP script, this launches 50 processes, which can easily cause you to hit a limit.
What can I do to avoid this error?
Here are some recommendations which may help to reduce your process usage.
- Ensure static files (like HTML or CSS files) don't have the
.phpfile extension. All requests to files with the
.phpextension generate entry processes, even if there is no actual PHP code in the file.
- Remove unnecessary plugins and scripts from your website. The less code is being executed on your website, the less time it generally needs to generate a response (which means the entry process quits faster).
- Install caching on your website, to help ensure code is executed fewer times.
If the suggestions above are not an option, please consider to upgrade your account to premium hosting, where you get much higher process limits.