php-fpm占用内存和CPU过高!!!

主机环境

Cent OS 6.5 x86_64
1核
2G

htop命令截图

clipboard.png

iotop命令截图

clipboard.png

php-fpm.conf文件参数

;;;;;;;;;;;;;;;;;;;;;
; FPM Configuration ;
;;;;;;;;;;;;;;;;;;;;;

;;;;;;;;;;;;;;;;;;
; Global Options ;
;;;;;;;;;;;;;;;;;;

[global]
pid = run/php-fpm.pid
error_log = log/php-fpm.log
log_level = warning 

emergency_restart_threshold = 30
emergency_restart_interval = 60s 
process_control_timeout = 5s
daemonize = yes

;;;;;;;;;;;;;;;;;;;;
; Pool Definitions ;
;;;;;;;;;;;;;;;;;;;;

[www]
listen = /dev/shm/php-cgi.sock
listen.backlog = -1
listen.allowed_clients = 127.0.0.1
listen.owner = www 
listen.group = www 
listen.mode = 0666
user = www 
group = www 

pm = dynamic
pm.max_children = 31
pm.start_servers = 5
pm.min_spare_servers = 2
pm.max_spare_servers = 8
pm.max_requests = 200
pm.process_idle_timeout = 10s
request_terminate_timeout = 120
request_slowlog_timeout = 0

pm.status_path = /php-fpm_status
slowlog = log/slow.log
rlimit_files = 51200
rlimit_core = 0

catch_workers_output = yes
;env[HOSTNAME] = i-hcxvh2s1
env[PATH] = /usr/local/bin:/usr/bin:/bin
env[TMP] = /tmp
env[TMPDIR] = /tmp
env[TEMP] = /tmp
阅读 7.4k
2 个回答

pm.max_requests = 200
这个参数有点少吧。

跑的什么程序,这么吃CPU呀????那么多的内存,就让PHP占呗。

1 Core 2G, 还是建议直接 static 模式吧.

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