php-fpm配置文件

php-fpm内的进程太多, 超占用内存-容易挤爆服服务器其他服务, 通过配置文件调整对应的进程数

php-fpm.conf 配置文件详解
pm = dynamic 选项有static和dynamic

若选static,则由pm.max_children指定固定的子进程数。
若选dynamic,则由pm.max_children、pm.start_servers、pm.min_spare_servers、pm.max_spare_servers 参数决定

pm.max_children = 70 (同一时间最大的进程数) 这里调小, 太多了机器给我挤爆了
pm.start_servers = 50
php-fpm初始化的进程数,默认值为:min_spare_servers + (max_spare_servers - min_spare_servers) / 2
pm.min_spare_servers = 40 空闲最大进程(占60%-80%) - 若空闲进程大于此值,此进行清理
pm.max_spare_servers = 70 空闲最大进程(占40%-20%) - 若空闲进程小于此值, 则创建新的子进程;
pm.max_requests = 2048 每个进程处理多少个请求之后自动终止,可以有效防止内存溢出,若为0则不会自动终止,默认为0
pm.process_idle_timeout = 10s 空闲多少秒之后进程会被kill,默认为10s
request_terminate_timeout = 120 如果设置为0或者过长的时间,可能会引起file_get_contents的资源问题-超时
request_slowlog_timeout = 0 为0表示关闭慢日志输出

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

catch_workers_output = yes
env[PATH] = /usr/local/bin:/usr/bin:/bin
env[TMP] = /tmp
env[TMPDIR] = /tmp
env[TEMP] = /tmp

    #在nginx.conf中添加下面两个匹配规则查看服务状态
    
    #nginx 内建了一个状态页 (查看Nginx的状态页)
    location /nginx_status {
      stub_status on;
      access_log off;
      #allow 127.0.0.1;
      #deny all;
    }

    #php-fpm 内建了一个状态页 (查看php-fpm的实时状态)
    location /php-fpm_status {
      fastcgi_pass unix:/dev/shm/php-cgi.sock;
      fastcgi_index index.php;
      include fastcgi.conf;
      #allow 127.0.0.1;
      #deny all;
    }

你可能感兴趣的:(php,php-fpm,php配置)