在网上了搜了干系资料,确认是php-fpm占用不开释了,通过修正配置优化。

1、办理php-fpm占用内请安题

我的做事器是1GB内存的配置php-fpm,实际设置数值还得根据做事器本身的性能、PHP等综合考虑。

没有phpfpm优化Linux中phpfpm过程占用内存及不释放内存问题 GraphQL

vim /etc/php-fpm.d/www.conf 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进程数量。

2、办理php-fpm进程不开释内存

上面通过减少php-fpm进程总数来达到减少php-fpm内存占用的问题,实际利用过程中创造php-fpm进程还存长期占用内存而不开释的问题。
办理的方法便是减少pm.max_requests数。

最大要求数max_requests,即当一个 PHP-CGI 进程处理的要求数累积到 max_requests 个后,自动重启该进程,这样达到了开释内存的目的了。
以1GB内存的VPS主机设置为例(如果你设置的数值没有达到开释内存可以连续调低):

pm.max_requests = 500

当php-fpm进程达到了pm.max_requests设定的数值后,就会重启该进程,从而开释内存。