解决:php进程过多,耗用系统大量内存

Linux就该这么学

中午在一台kvm上配置监控,但是明显感觉机器卡的受不了,就简单的排查了下

1、查看服务器网卡流量

sar -n DEV 2 10

可以看出网卡的流量并不是很大,排除网卡方面的问题。

2、查看CPU

top

上图可以看出CPU占用也不是很多,但是发现了很多php-cgi的进程

3、查看系统内存

free -m

不看不知道,一看吓一跳,系统内存已经使用完了,并且也使用了swap剩余内存,但是究竟是什么程序占用了内存呢。

ps -ef | grep php

查看当前系统中的所有进程,过滤出来php相关的进程

 

大概统计了下,将近有200多个php相关进程,有什么方法能减少这些进程呢?

答案肯定是有的,在php-cgi的配置文件中是可以自定义php的进程数的。

vim /usr/local/php-5.2.17/etc/php-fpm.conf

搜索  max_children 字段,将后面的数字改成自己要定义的进程数

默认有256个,怪不了那么卡,我改成了10 个。

pkill php  结束所有的php进程

/usr/local/php-5.2.17/sbin/php-fpm start  启动php

在查看进程

发现明显减少了。

最后在查看下系统的内存

问题解决,系统也明显感觉不到卡了。

本文由 CentOS中文站 - 专注Linux技术 作者:centos 发表,其版权均为 CentOS中文站 - 专注Linux技术 所有,文章内容系作者个人观点,不代表 CentOS中文站 - 专注Linux技术 对观点赞同或支持。如需转载,请注明文章来源。

相关文章

发表评论

邮箱地址不会被公开。 必填项已用*标注