最新消息:QQ部落讨论:讨论群 你还可以: 投稿 /网址导航 / 联系邮箱:deffyc@gmail.com

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

web应用 deffyc 4907浏览 0评论

中午在一台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

在查看进程

发现明显减少了。

最后在查看下系统的内存

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

主义若选择dynamic 那么max_children 必须大于等于max_spare_servers

; Choose how the process manager will control the number of child processes.
; Possible Values:
; static – a fixed number (pm.max_children) of child processes;
; dynamic – the number of child processes are set dynamically based on the
; following directives. With this process management, there will be
; always at least 1 children.
; pm.max_children – the maximum number of children that can
; be alive at the same time.
; pm.start_servers – the number of children created on startup.
; pm.min_spare_servers – the minimum number of children in ‘idle’
; state (waiting to process). If the number
; of ‘idle’ processes is less than this
; number then some children will be created.
; pm.max_spare_servers – the maximum number of children in ‘idle’
; state (waiting to process). If the number
; of ‘idle’ processes is greater than this
; number then some children will be killed.
; ondemand – no children are created at startup. Children will be forked when
; new requests will connect. The following parameter are used:
; pm.max_children – the maximum number of children that
; can be alive at the same time.
; pm.process_idle_timeout – The number of seconds after which
; an idle process will be killed.
; Note: This value is mandatory.

转载请注明:匆匆岁月 » 解决:php进程过多,耗用系统大量内存

发表我的评论
取消评论
表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址