Home >Backend Development >PHP Problem >What should I do if php-fpm takes up too much memory?

What should I do if php-fpm takes up too much memory?

王林
王林Original
2021-09-17 16:39:424777browse

Solution to the problem that php-fpm takes up too much memory: Set pm.min_spare_servers and pm.max_spare_servers within a reasonable range to ensure that the number of processes will continue to change.

What should I do if php-fpm takes up too much memory?

The operating environment of this article: windows10 system, PHP7, thinkpad t480 computer.

The method to solve the problem of excessive memory usage by php-fpm is as follows:

Method 1: Adjust the management mode

static management mode is suitable for larger memory server, and dynamic is suitable for servers with small memory. You can set a reasonable range of pm.min_spare_servers and pm.max_spare_servers, so that the number of processes will continue to change. The ondemand mode is more suitable for small memory, such as 512MB or 256MB memory, and environments with low availability requirements.

Method 2: Reduce the number of php-fpm processes

If the memory of your VPS host is occupied and exhausted, you can check the number of your php-fpm processes. According to the number of php-fpm processes =memory/2/30 calculation, the number of php-fpm processes suitable for 1GB of memory is between 10-20, depending on the add-ons loaded by your PHP.

php-fpm configuration example

Here is a VPS configuration of php-fpm with 1GB memory as a demonstration. In actual operation, the setting value must be considered based on the performance of the server itself, PHP, etc.

pm = dynamic #dynamic和ondemand适合小内存。
pm.max_children = 15 #static模式下生效,dynamic不生效。
pm.start_servers = 8 #dynamic模式下开机的进程数量。
pm.min_spare_servers = 6 #dynamic模式下最小php-fpm进程数量。
pm.max_spare_servers = 15 #dynamic模式下最大php-fpm进程数量。

Recommended learning: php training

The above is the detailed content of What should I do if php-fpm takes up too much memory?. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn

Related articles

See more