内存被php-fpm占用,访问PHP探针释放内存?

sjaeiou
  • 5
新手上路,请多包涵

我这里有一台主机是CentOS,装了LNMP1.7的,2核4G配置,只运行一个PHP网站
有一个非常奇怪的现象,内存长期被php-fpm占用,无论如何优化,减少进程数,重启后,内存都会在几个小时内慢慢攀升到95%+,导致网站访问502报错
通过重启php-fpm可以恢复,但是发现有个奇怪的现象,只要一访问PHP探针,这个内存占用也会立即降下来。打开探针可以看到内存是95%,十几秒后就降到40%左右。

想问下这是个什么原理?
以下是探针截图,就是LNMP安装的那个探针
image.png

补充一个服务器内存监控图,红圈圈出来的时间点就是我在浏览器里访问PHP探针的时候,只要关闭了探针,内存就想上走,一开探针,内存就断崖下降,非常诡异
image.png

回复
阅读 380
1 个回答

看你的内容,好像无法了解问题的原因,我建议你先了解几个数据,再根据数据去解决问题

1、内存过高时,进入服务器,php -ef | grep php-fpm, 查看php-fpm的内存使用情况(检查是否是因为某个进程影响的,还是大批量的php-fpm连接,未销毁)
2、内存过高时,检查服务器当前使用内存量的前几个进程,查看是否异常
3、根据以上因素判断,如果是,则检查一下fpm日志 和 nginx access.log ,再找问题。不是的话,再看看

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
你知道吗?

宣传栏