Home >Backend Development >PHP Problem >What to do if the php cgi process takes up too much
Solutions to the problem that the php cgi process occupies too much space: 1. Disable the eAccelerater module from "php.ini"; 2. Use the Linux proc virtual file system to find the specific problem program; 3. Use the Linux proc virtual file system to find the specific problem program; proc file system to find out the reason.
Recommended: "PHP Video Tutorial"
Under normal circumstances, PHP-CGI is only used when the user accesses it It will occupy CPU resources, but recently a colleague reported that the PHP-CGI process on the server occupies a lot of CPU, but the access traffic is very small. This is obviously an abnormal phenomenon, indicating that there is a fault somewhere. The following possible reasons for this problem are shared with you.
1. Compatibility issues
If there are problems with php extensions being compatible with php versions, similar cases have been reported. There are problems with eAccelerater being compatible with certain php versions. Specifically After starting the php-cgi process during performance,
ran for more than 10 minutes, which was extremely slow, but static resource access was very fast, and the server load was also normal (this shows that there is no problem with nginx in the server parsing function, but with php-cgi process issues).
Solution
Disable the eAccelerater module from php.ini, and then restart the php-cgi process.
2. There may be an infinite loop in the program
If there is an infinite loop in the program, it will definitely cause the server load to be extremely high (use the top command to check the load as high as 100).
Solution
Use the Linux proc virtual file system to find the specific problem program.
3. Unreasonable use of session by PHP program
We can see in the information that this happened in the open source Weibo note dog program. The specific manifestation is that there is a small amount of PHP- The cpu usage rate of cgi processes (no more than 10) reaches more than 98%,
The server load is between 4-8,
Solution
requires the help of Linux proc file system find out the reason.
4. There are overly time-consuming and impossible operations in the program
If this is the case, it is because the program itself was not written in a standardized manner when it was written. This needs to be solved jointly with the software designers and programming engineers.
The above is the detailed content of What to do if the php cgi process takes up too much. For more information, please follow other related articles on the PHP Chinese website!