[LNMP]php-fpm相关配置

简介:

php-fpm pool

方式一

1、编辑php-fpm配置文件

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
[root@plinuxos ~] # vi /usr/local/php-fpm/etc/php-fpm.conf
[global]
pid =  /usr/local/php-fpm/var/run/php-fpm .pid
error_log =  /usr/local/php-fpm/var/log/php-fpm .log
[www]
listen =  /tmp/php-fcgi .sock
listen.mode = 666
user = php-fpm
group = php-fpm
pm = dynamic
pm.max_children = 50
pm.start_servers = 20
pm.min_spare_servers = 5
pm.max_spare_servers = 35
pm.max_requests = 500
rlimit_files = 1024
#####添加以下内容#####
[ test .com]
listen =  /tmp/test .sock
listen.mode = 666
user = php-fpm
group = php-fpm
pm = dynamic
pm.max_children = 50
pm.start_servers = 20
pm.min_spare_servers = 5
pm.max_spare_servers = 35
pm.max_requests = 500
rlimit_files = 1024

2、检查与重载

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
[root@plinuxos ~] # /usr/local/php-fpm/sbin/php-fpm -t
[17-Aug-2017 21:15:03] NOTICE: configuration  file  /usr/local/php-fpm/etc/php-fpm .conf  test  is successful
 
[root@plinuxos ~] # /etc/init.d/php-fpm reload
Reload service php-fpm   done
[root@plinuxos ~] # ps aux |grep php-fpm
root      88331  0.0  0.1 226756  4976 ?        Ss   21:15   0:00 php-fpm: master process ( /usr/local/php-fpm/etc/php-fpm .conf)
php-fpm   88332  0.0  0.1 226696  4712 ?        S    21:15   0:00 php-fpm: pool www
php-fpm   88333  0.0  0.1 226696  4712 ?        S    21:15   0:00 php-fpm: pool www
php-fpm   88334  0.0  0.1 226696  4712 ?        S    21:15   0:00 php-fpm: pool www
php-fpm   88335  0.0  0.1 226696  4712 ?        S    21:15   0:00 php-fpm: pool www
php-fpm   88336  0.0  0.1 226696  4716 ?        S    21:15   0:00 php-fpm: pool www
php-fpm   88337  0.0  0.1 226696  4716 ?        S    21:15   0:00 php-fpm: pool www
php-fpm   88338  0.0  0.1 226696  4716 ?        S    21:15   0:00 php-fpm: pool www
php-fpm   88339  0.0  0.1 226696  4716 ?        S    21:15   0:00 php-fpm: pool www
php-fpm   88340  0.0  0.1 226696  4716 ?        S    21:15   0:00 php-fpm: pool www
php-fpm   88341  0.0  0.1 226696  4716 ?        S    21:15   0:00 php-fpm: pool www
php-fpm   88342  0.0  0.1 226696  4716 ?        S    21:15   0:00 php-fpm: pool www
php-fpm   88343  0.0  0.1 226696  4720 ?        S    21:15   0:00 php-fpm: pool www
php-fpm   88344  0.0  0.1 226696  4720 ?        S    21:15   0:00 php-fpm: pool www
php-fpm   88345  0.0  0.1 226696  4720 ?        S    21:15   0:00 php-fpm: pool www
php-fpm   88346  0.0  0.1 226696  4720 ?        S    21:15   0:00 php-fpm: pool www
php-fpm   88347  0.0  0.1 226696  4720 ?        S    21:15   0:00 php-fpm: pool www
php-fpm   88348  0.0  0.1 226696  4720 ?        S    21:15   0:00 php-fpm: pool www
php-fpm   88349  0.0  0.1 226696  4720 ?        S    21:15   0:00 php-fpm: pool www
php-fpm   88350  0.0  0.1 226696  4720 ?        S    21:15   0:00 php-fpm: pool www
php-fpm   88351  0.0  0.1 226696  4720 ?        S    21:15   0:00 php-fpm: pool www
php-fpm   88352  0.0  0.1 226696  4716 ?        S    21:15   0:00 php-fpm: pool  test .com
php-fpm   88353  0.0  0.1 226696  4716 ?        S    21:15   0:00 php-fpm: pool  test .com
php-fpm   88354  0.0  0.1 226696  4716 ?        S    21:15   0:00 php-fpm: pool  test .com
php-fpm   88355  0.0  0.1 226696  4716 ?        S    21:15   0:00 php-fpm: pool  test .com
php-fpm   88356  0.0  0.1 226696  4720 ?        S    21:15   0:00 php-fpm: pool  test .com
php-fpm   88357  0.0  0.1 226696  4720 ?        S    21:15   0:00 php-fpm: pool  test .com
php-fpm   88358  0.0  0.1 226696  4720 ?        S    21:15   0:00 php-fpm: pool  test .com
php-fpm   88359  0.0  0.1 226696  4724 ?        S    21:15   0:00 php-fpm: pool  test .com
php-fpm   88360  0.0  0.1 226696  4724 ?        S    21:15   0:00 php-fpm: pool  test .com
php-fpm   88361  0.0  0.1 226696  4724 ?        S    21:15   0:00 php-fpm: pool  test .com
php-fpm   88362  0.0  0.1 226696  4724 ?        S    21:15   0:00 php-fpm: pool  test .com
php-fpm   88363  0.0  0.1 226696  4724 ?        S    21:15   0:00 php-fpm: pool  test .com
php-fpm   88364  0.0  0.1 226696  4724 ?        S    21:15   0:00 php-fpm: pool  test .com
php-fpm   88365  0.0  0.1 226696  4724 ?        S    21:15   0:00 php-fpm: pool  test .com
php-fpm   88366  0.0  0.1 226696  4724 ?        S    21:15   0:00 php-fpm: pool  test .com
php-fpm   88367  0.0  0.1 226696  4724 ?        S    21:15   0:00 php-fpm: pool  test .com
php-fpm   88368  0.0  0.1 226696  4724 ?        S    21:15   0:00 php-fpm: pool  test .com
php-fpm   88369  0.0  0.1 226696  4724 ?        S    21:15   0:00 php-fpm: pool  test .com
php-fpm   88370  0.0  0.1 226696  4724 ?        S    21:15   0:00 php-fpm: pool  test .com
php-fpm   88371  0.0  0.1 226696  4724 ?        S    21:15   0:00 php-fpm: pool  test .com
root      88492  0.0  0.0 112652  968 pts /0      S+   21:16   0:00  grep  --color=auto php-fpm

3、编辑网站配置文件

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
[root@plinuxos ~] # vi /usr/local/nginx/conf/vhost/default.conf 
server
{
     listen 80 default_server;  
     server_name aaa.com;
     index index.html index.htm index.php;
     root  /data/wwwroot/default ;
     access_log  /tmp/default .log juispan;
     location ~ \.php$
     {
         include fastcgi_params;
         fastcgi_pass unix: /tmp/test .sock;
         fastcgi_index index.php;
         fastcgi_param SCRIPT_FILENAME  /data/wwwroot/default $fastcgi_script_name;
     }
}

方式二

1、编辑php-fpm配置文件

1
2
3
4
5
[root@plinuxos ~] # vi /usr/local/php-fpm/etc/php-fpm.conf
[global]
pid =  /usr/local/php-fpm/var/run/php-fpm .pid
error_log =  /usr/local/php-fpm/var/log/php-fpm .log
include=etc /php-fpm .d/*.conf

2、编辑网站配置文件

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
[root@plinuxos ~] # mkdir /usr/local/php-fpm/etc/php-fpm.d
[root@plinuxos ~] # vi /usr/local/php-fpm/etc/php-fpm.d/test.conf
[ test ]
listen =  /tmp/test .sock
#listen = 127.0.0.1:9000
listen.mode = 666
user = php-fpm
group = php-fpm
pm = dynamic
pm.max_children = 50
pm.start_servers = 20
pm.min_spare_servers = 5
pm.max_spare_servers = 35
pm.max_requests = 500
rlimit_files = 1024
[root@plinuxos ~] # vi /usr/local/php-fpm/etc/php-fpm.d/abc.conf 
[www]
listen =  /tmp/php-fcgi .sock
#listen = 127.0.0.1:9000
listen.mode = 666
user = php-fpm
group = php-fpm
pm = dynamic
pm.max_children = 50
pm.start_servers = 20
pm.min_spare_servers = 5
pm.max_spare_servers = 35
pm.max_requests = 500
rlimit_files = 1024

3、检查与重载

1
2
3
4
5
[root@plinuxos ~] # /usr/local/php-fpm/sbin/php-fpm -t
[17-Aug-2017 21:15:03] NOTICE: configuration  file  /usr/local/php-fpm/etc/php-fpm .conf  test  is successful
 
[root@plinuxos ~] # /etc/init.d/php-fpm reload
Reload service php-fpm   done

4、检查效果

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
[root@plinuxos ~] # ps aux |grep php-fpm
root      91955  0.1  0.1 226784  4980 ?        Ss   21:50   0:00 php-fpm: master process ( /usr/local/php-fpm/etc/php-fpm .conf)
php-fpm   91956  0.0  0.1 226724  4728 ?        S    21:50   0:00 php-fpm: pool www
php-fpm   91957  0.0  0.1 226724  4728 ?        S    21:50   0:00 php-fpm: pool www
php-fpm   91958  0.0  0.1 226724  4728 ?        S    21:50   0:00 php-fpm: pool www
php-fpm   91959  0.0  0.1 226724  4728 ?        S    21:50   0:00 php-fpm: pool www
php-fpm   91960  0.0  0.1 226724  4732 ?        S    21:50   0:00 php-fpm: pool www
php-fpm   91961  0.0  0.1 226724  4732 ?        S    21:50   0:00 php-fpm: pool www
php-fpm   91962  0.0  0.1 226724  4732 ?        S    21:50   0:00 php-fpm: pool www
php-fpm   91963  0.0  0.1 226724  4732 ?        S    21:50   0:00 php-fpm: pool www
php-fpm   91964  0.0  0.1 226724  4732 ?        S    21:50   0:00 php-fpm: pool www
php-fpm   91965  0.0  0.1 226724  4732 ?        S    21:50   0:00 php-fpm: pool www
php-fpm   91966  0.0  0.1 226724  4736 ?        S    21:50   0:00 php-fpm: pool www
php-fpm   91967  0.0  0.1 226724  4736 ?        S    21:50   0:00 php-fpm: pool www
php-fpm   91968  0.0  0.1 226724  4736 ?        S    21:50   0:00 php-fpm: pool www
php-fpm   91969  0.0  0.1 226724  4736 ?        S    21:50   0:00 php-fpm: pool www
php-fpm   91970  0.0  0.1 226724  4736 ?        S    21:50   0:00 php-fpm: pool www
php-fpm   91971  0.0  0.1 226724  4736 ?        S    21:50   0:00 php-fpm: pool www
php-fpm   91972  0.0  0.1 226724  4736 ?        S    21:50   0:00 php-fpm: pool www
php-fpm   91973  0.0  0.1 226724  4736 ?        S    21:50   0:00 php-fpm: pool www
php-fpm   91974  0.0  0.1 226724  4736 ?        S    21:50   0:00 php-fpm: pool www
php-fpm   91975  0.0  0.1 226724  4736 ?        S    21:50   0:00 php-fpm: pool www
php-fpm   91976  0.0  0.1 226724  4732 ?        S    21:50   0:00 php-fpm: pool  test
php-fpm   91977  0.0  0.1 226724  4732 ?        S    21:50   0:00 php-fpm: pool  test
php-fpm   91978  0.0  0.1 226724  4732 ?        S    21:50   0:00 php-fpm: pool  test
php-fpm   91979  0.0  0.1 226724  4732 ?        S    21:50   0:00 php-fpm: pool  test
php-fpm   91980  0.0  0.1 226724  4736 ?        S    21:50   0:00 php-fpm: pool  test
php-fpm   91981  0.0  0.1 226724  4736 ?        S    21:50   0:00 php-fpm: pool  test
php-fpm   91982  0.0  0.1 226724  4740 ?        S    21:50   0:00 php-fpm: pool  test
php-fpm   91983  0.0  0.1 226724  4740 ?        S    21:50   0:00 php-fpm: pool  test
php-fpm   91984  0.0  0.1 226724  4740 ?        S    21:50   0:00 php-fpm: pool  test
php-fpm   91985  0.0  0.1 226724  4740 ?        S    21:50   0:00 php-fpm: pool  test
php-fpm   91986  0.0  0.1 226724  4740 ?        S    21:50   0:00 php-fpm: pool  test
php-fpm   91987  0.0  0.1 226724  4740 ?        S    21:50   0:00 php-fpm: pool  test
php-fpm   91988  0.0  0.1 226724  4740 ?        S    21:50   0:00 php-fpm: pool  test
php-fpm   91989  0.0  0.1 226724  4740 ?        S    21:50   0:00 php-fpm: pool  test
php-fpm   91990  0.0  0.1 226724  4740 ?        S    21:50   0:00 php-fpm: pool  test
php-fpm   91991  0.0  0.1 226724  4740 ?        S    21:50   0:00 php-fpm: pool  test
php-fpm   91992  0.0  0.1 226724  4740 ?        S    21:50   0:00 php-fpm: pool  test
php-fpm   91993  0.0  0.1 226724  4740 ?        S    21:50   0:00 php-fpm: pool  test
php-fpm   91994  0.0  0.1 226724  4740 ?        S    21:50   0:00 php-fpm: pool  test
php-fpm   91995  0.0  0.1 226724  4740 ?        S    21:50   0:00 php-fpm: pool  test
root      92012  0.0  0.0 112652  968 pts /0      S+   21:50   0:00  grep  --color=auto php-fpm



慢执行日志

1、编辑网站配置文件

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
[root@plinuxos ~] # vi /usr/local/php-fpm/etc/php-fpm.d/test.conf 
[ test ]
listen =  /tmp/test .sock
#listen = 127.0.0.1:9000
listen.mode = 666
user = php-fpm
group = php-fpm
pm = dynamic
pm.max_children = 50
pm.start_servers = 20
pm.min_spare_servers = 5
pm.max_spare_servers = 35
pm.max_requests = 500
rlimit_files = 1024
request_slowlog_timeout = 2           ##超过2秒记录日志
slowlog =  /usr/local/php-fpm/var/log/test_slow .log

2、检查与重载

1
2
3
4
5
6
[root@plinuxos ~] # /usr/local/php-fpm/sbin/php-fpm -t
[17-Aug-2017 21:56:07] NOTICE: configuration  file  /usr/local/php-fpm/etc/php-fpm .conf  test  is successful
 
[root@plinuxos ~] # /etc/init.d/php-fpm restart
Gracefully shutting down php-fpm .  done
Starting php-fpm   done

3、检查效果

1
2
3
4
5
[root@plinuxos ~] # cat /usr/local/php-fpm/var/log/test_slow.log 
 
[17-Aug-2017 22:01:42]  [pool  test ] pid 92722
script_filename =  /data/wwwroot/default/1 .php
[0x00007fc823e8f2d0]  sleep ()  /data/wwwroot/default/1 .php:3


open_basedir

1、配置网站配置文件

1
[root@plinuxos ~] # echo "php_admin_value[open_basedir]=/data/wwwroot/default:/tmp/" >> /usr/local/php-fpm/etc/php-fpm.d/test.conf  ##限制default目录下不可以访问其他站点资源

2、编辑php.ini文件

1
2
[root@plinuxos ~] # vi /usr/local/php-fpm/etc/php.ini 
errot_log =  /usr/local/php-fpm/var/log/php_error .log

3、检查与重载

1
2
3
4
5
6
[root@plinuxos ~] # /usr/local/php-fpm/sbin/php-fpm -t
[17-Aug-2017 21:15:03] NOTICE: configuration  file  /usr/local/php-fpm/etc/php-fpm .conf  test  is successful
 
[root@plinuxos ~] # /etc/init.d/php-fpm restart
Gracefully shutting down php-fpm .  done
Starting php-fpm   done

3、测试效果

1
2
3
4
5
6
[root@plinuxos ~] # touch /usr/local/php-fpm/var/log/php_error.log
[root@plinuxos ~] # chmod 777 /usr/local/php-fpm/var/log/php_error.log
[root@plinuxos ~] # curl -x127.0.0.1:80 abc.com/2.php
File not found.
[root@plinuxos ~] # ls /data/wwwroot/abc.com/
2.php


进程管理

▎配置文件参数详解:

pm = dynamic               //动态进程管理,也可以是static
pm.max_children = 50       //最大子进程数,ps aux可以查看
pm.start_servers = 20      //启动服务时会启动的进程数
pm.min_spare_servers = 5   //定义在空闲时段,子进程数的最少数量,如果达到这个数值时,php-fpm服务会自动派生新的子进程。
pm.max_spare_servers = 35  //定义在空闲时段,子进程数的最大值,如果高于这个数值就开始清理空闲的子进程。
pm.max_requests = 500      //定义一个子进程最多处理的请求数,也就是说在一个php-fpm的子进程最多可以处理这么多请求,当达到这个数值时,它会自动退出。













本文转自Grodd51CTO博客,原文链接:http://blog.51cto.com/juispan/1957195,如需转载请自行联系原作者


相关文章
|
运维 前端开发 应用服务中间件
LNMP详解(八)——Nginx动静分离实战配置
LNMP详解(八)——Nginx动静分离实战配置
169 0
|
缓存 监控 网络协议
在配置 PHP-FPM 的 pool 时,常见的性能优化技巧
在配置 PHP-FPM 的 pool 时,常见的性能优化技巧
142 2
|
存储 运维 Serverless
函数计算产品使用问题之在YAML文件中配置了环境变量,但在PHP代码中无法读取到这些环境变量,是什么原因
函数计算产品作为一种事件驱动的全托管计算服务,让用户能够专注于业务逻辑的编写,而无需关心底层服务器的管理与运维。你可以有效地利用函数计算产品来支撑各类应用场景,从简单的数据处理到复杂的业务逻辑,实现快速、高效、低成本的云上部署与运维。以下是一些关于使用函数计算产品的合集和要点,帮助你更好地理解和应用这一服务。
248 1
|
运维 前端开发 应用服务中间件
LNMP详解(八)——Nginx动静分离实战配置
LNMP详解(八)——Nginx动静分离实战配置
129 1
|
12月前
|
安全 PHP 开发者
php中配置variables_order详解
`variables_order` 是 PHP 配置中的一个关键指令,它决定了不同来源的变量被导入到全局变量空间的顺序。正确配置 `variables_order` 不仅可以确保变量的正确处理和覆盖顺序,还能提高应用程序的安全性。开发者应根据具体应用的需求,合理配置 `variables_order`,确保应用的稳定和安全运行。
138 5
|
12月前
|
监控 PHP Apache
优化 PHP-FPM 参数配置:实现服务器性能提升
优化PHP-FPM的参数配置可以显著提高服务器的性能和稳定性。通过合理设置 `pm.max_children`、`pm.start_servers`、`pm.min_spare_servers`、`pm.max_spare_servers`和 `pm.max_requests`等参数,并结合监控和调优措施,可以有效应对高并发和负载波动,确保Web应用程序的高效运行。希望本文提供的优化建议和配置示例能够帮助您实现服务器性能的提升。
608 3
|
关系型数据库 MySQL PHP
php wampserver的使用配置
本文介绍了WampServer在Windows系统下的配置和使用方法,包括如何修改PHP时区为中国标准时区PRC、更改Apache服务器端口号以避免冲突、设置起始页以及如何创建和管理虚拟目录。通过这些步骤,用户可以更有效地在本地环境中开发和测试PHP程序。
php wampserver的使用配置
|
Unix PHP
PHP-FPM 配置
PHP-FPM 配置
190 5
|
IDE 安全 网络安全
Xdebug 在不同版本的 PHP 中配置方法有什么不同?
Xdebug 在不同版本的 PHP 中配置方法有什么不同?
502 4
|
监控 IDE PHP
php xdebug的配置、调试、跟踪、调优、分析
php xdebug的配置、调试、跟踪、调优、分析
下一篇
开通oss服务