如何快速定位php程序运行慢的地方
2024-01-03 10:32:09
1 slow log日志
查看slowlog日志位置
编辑php-fpm.conf文件,更改或增加两行内容
slowlog = /data/logs/php-slow.log
request_slowlog_timeout = 2?
说明:slowlog定义日志路径和名字,request_slowlog_timeout定义超时时间,单位秒,即一个php脚本执行时间超过了该时间,则会记录日志。
2 重启php-fpm服务或者重载php-fpm配置,要针对master进程做操作
(1)master进程可以理解以下信号
INT, TERM 立刻终止?
QUIT 平滑终止?
USR1 重新打开日志文件?
USR2 平滑重载所有worker进程并重新载入配置和二进制模块
具体步骤
1 先查看php-fpm的master进程号
ps -aux | grep php-fpm
2 重启php-fpm:
kill -USR2 2208
(2) 如果有php-fpm.pid 可以用php-fpm.pid控制
kill -USR2 `cat /www/server/php/73/var/run/php-fpm.pid`
3 测试
我设置的超时时间request_slowlog_timeout为30秒
访问地址一下出现先下面的错误
很容易定位到了test方法里的sleep方法
如果是apache可以使用这个Xdebug+Webgrind
文章来源:https://blog.csdn.net/nihao123456789222/article/details/135356424
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!