释放双眼,带上耳机,听听看~!
PHP-FPM(PHP FastCGI Process Manager的简称,即PHP FastCGI进程管理器)是用于管理PHP进程池的软件,用于接收和处理来自Web服务器的请求。PHP-FPM软件会创建一个主进程(通常以操作系统中根用户身份运行),控制何时以及如何把HTTP请求转发给一个或多个子进程处理。PHP-FPM主进程还控制着什么时候创建(处理Web应用更多的流量)和销毁(子进程运行时间太久或不再需要了)PHP子进程。PHP-FPM进程池中的每个进程存在的时间都比单个HTTP请求长,可以处理10、50、100、500或更多的HTTP请求。
全局配置
源码编译的php-fpm配置文件为/usr/local/php/etc/php-fpm.conf
1 2 | emergency_restart_threshold = 10 # 在指定一段时间内,如果失效的PHP-FPM了进程超过这个值,PHP-FPM主进程就优雅重启 emergency_restart_interval = 10 # 设定emergency_restart_threshold设置采用的时间跨度 |
配置进程池
源码编译的php-fpm配置文件为/usr/local/php/etc/php-fpm.d/www.conf
各个PHP-FPM进程池都以指定的操作系统用户和用户组的身份运行。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | user = nobody # 拥有这个PHP-FPM进程池中子进程的系统用户。要把这个设置的值设为运行PHP应用的非根用户的用户名。 group = nobody # 拥有这个PHP—FPM进程池中子进程的系统用户组。要把这个设置的值设为运行PHP应用的非根用户所属的用户组名。 listen = 127.0.0.1:9000 # PHP-FPM进程池监听的IP地址和端口号,让PHP-FPM只接受从这里传入的请求。 listen.allowed_clients = 127.0.0.1 # 可以向这个PHP-FPM进程池发送请求的IP地址(一个或多个)。 pm.max_children = 51 # 这个设置设定任何时间点PHP—FPM进程池中最多能有多少个进程。 pm.start_servers = 3 # PHP-FPM启动时PHP-FPM进程池中立即可用的进程数。 pm.min_spare_servers = 2 # PHP应用空闲时PHP-FPM进程池中可以存在的进程数量最小值。 pm.max_spare_servers = 4 # PHP应用空闲时PHP-FPM进程池中可以存在的进程数量最大值。 pm.max_requests = 1000 # 回收进程之前,PHP-FPM进程池中各个进程最多能处理的HTTP请求数量。 slowlog = /usr/local/php/var/log/slowlog.log # 这个设置的值是一个日志文件在文件系统中的绝对路径。 request_slowlog_timeout = 5s # 当HTTP请求的处理时间超过指定的值,就把请求的回溯信息写入slowlog设置指定的日志文件。 |
声明:本站只作网络安全交流之用。严禁发布低俗、违法、涉及政治的内容。如若本站内容侵犯了原著者的合法权益,可联系我们[181-1319-3168]进行及时处理。
涂鸦[398276]