Total Pageviews

Sunday, 8 November 2020

PHP性能分析工具xhprof的安装、使用说明

 XHProf (A Hierarchical Profiler For PHP)是一个轻量级的分层性能测量分析器,是C实现的PHP Zend扩展,最初是facebook的大神们写的,是分层的函数调用级别的分析函数执行的时间、CPU计算时间、内存消耗的PHP性能分析工具。XHProf 除了用C实现的Zend扩展之外,还有一个PHP实现的界面,使得查看XHProf分析结果变得更加容易。

本文所使用的环境,Centos 6.5,PHP 7.0,Nginx 1.9。

安装xhprof

[root@kuleyang opt]# git clone -b php7 https://github.com/RustJason/xhprof.git
[root@kuleyang opt]# cd xhprof/
[root@kuleyang xhprof]# cd extension/
[root@kuleyang extension]# phpize
[root@kuleyang extension]# ./configure
[root@kuleyang extension]# make && make install

xhprof运行时配置(php.ini中加入)

extension=xhprof.so
xhprof.output_dir=/tmp/xhprof

其中xhprof.output_dir配置项指定了xhprof生成的分析报告保存的目录,要求此目录具有可写权限(不管PHP CLI,还是做为Web Server方式运行)

php -m查看扩展是否加载

安装Graphviz(将XHProf的分析报告以程序的函数调用图来展现)

[root@kuleyang opt]# wget http://www.graphviz.org/pub/graphviz/stable/SOURCES/graphviz-2.38.0.tar.gz
[root@kuleyang opt]# tar zxvf graphviz-2.38.0.tar.gz
[root@kuleyang opt]# cd graphviz-2.38.0
[root@kuleyang graphviz-2.38.0]# ./configure
[root@kuleyang graphviz-2.38.0]# make && make install

如加上–prefix编译参数,请将安装完毕的主目录中的bin目录路径加入到环境变量PATH中,另外需要注意的如果通过XHProf提供的PHP UI界面查看函数调用图,需要将PHP的proc_open类的函数打开。

关于XHProf的更详细的介绍

http://web.archive.org/web/20110514095512/ http://mirror.facebook.net/facebook/xhprof/doc.html

No comments:

Post a Comment