架构师_程序员_码农网

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 2162|回复: 0

【实战】php-fpm 慢日志 slowlog 分析网站瓶颈

[复制链接]
发表于 2021-12-19 11:43:12 | 显示全部楼层 |阅读模式
当使用 php 开发一个网站的时候,在上线之后,如果有些 php 动态页面访问非常慢,我们可以通过 php-fpm 慢日志进行分析网站的瓶颈。

php-fpm 慢日志 slowlog 设置可以让我们很好的看见哪些 php 进程速度太慢而导致的网站问题。

首先通过 top -c 命令查看所有进程,查看 php-fpm 加载的配置文件地址,如下图:

QQ截图20211219113527.jpg

FPM 配置

参数:-p,命令行中动态修改--prefix

include=etc/php-fpm.d/*.conf,用于包含一个或多个文件,如果glob(3)存在(glob()函数返回匹配指定模式的文件名或目录)

php-fpm 会加载子配置文件,$pool 变量可以在任何指令中使用,他将会替代相应的进程池名字。例如:这里的[www]

开启慢日志

进入到 /usr/local/etc/php-fpm.d 子配置文件,找到 www.conf(根据自己实际情况),PHP 5.3.3 之后版本设置如下:

; The timeout for serving a single request after which a PHP backtrace will be
; dumped to the 'slowlog' file. A value of '0s' means 'off'.
; Available units: s(econds)(default), m(inutes), h(ours), or d(ays)
; Default Value: 0
request_slowlog_timeout = 1s
; The log file for slow requests
; Default Value: /usr/local/php/log/php-fpm.log.slow
slowlog = /usr/local/php/log/php-fpm.log.slow
; The timeout for serving a single request after which the worker process will
; be killed. This option should be used when the 'max_execution_time' ini option
; does not stop script execution for some reason. A value of '0' means 'off'.
; Available units: s(econds)(default), m(inutes), h(ours), or d(ays)
; Default Value: 0
request_terminate_timeout = 10s
注:request_terminate_timeout 将执行时间太长的进程直接终止

request_slowlog_timeout 将执行过慢的文件写入日志

以后即可根据慢执行日志 /usr/local/php/log/php-fpm.log.slow 来优化程序文件了!





上一篇:百度文库无法复制解决方案
下一篇:【实战】Java 使用 hutool 发送邮件
码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

免责声明:
码农网所发布的一切软件、编程资料或者文章仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本站信息来自网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。如果您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。如有侵权请邮件与我们联系处理。

Mail To:help@itsvse.com

QQ|手机版|小黑屋|架构师 ( 鲁ICP备14021824号-2 )|网站地图

GMT+8, 2024-4-20 11:10

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表