Heim  >  Artikel  >  php教程  >  Xhprof的安装 - 流浪撒哈拉

Xhprof的安装 - 流浪撒哈拉

PHPz
PHPzOriginal
2016-06-06 20:07:151157Durchsuche

简介:XHProf是一个分层PHP性能分析工具。它报告函数级别的请求次数和各种指标,包括阻塞时间,CPU时间和内存使用情况。一个函数的开销,可细分成调用者和被调用者的开销,XHProf数据收集阶段,它记录调用次数的追踪和包容性的指标弧在动态callgraph的一个程序。它独有的数据计算的报告/后处理阶段。在数据收集时,XHProfd通过检测循环来处理递归的函数调用,并通过给递归调用中每个深度的调用一个有用的命名来避开死循环。XHProf分析报告有助于理解被执行的代码的结构,它有一个简单的HTML的用户界面( PHP写成的)。基于浏览器的性能分析用户界面能更容易查看,或是与同行们分享成果。也能绘制调用关系图。

编译安装

  1. 下载Xhprof:https://pecl.php.net/package/xhprof

  2. 自行解压【如果不会,这个可以百度了,的学习了】

  3. cd xhprof/extension【就是进入到你解压的目录里面】

  4. 执行:/path/to/php/bin/phpize【这个就是你的phpize目录,找到自己的路径或者直接运行phpize,还是找不到就whereis phpize应该可以找到phpize】

  5. 执行:make && make install

  6. 这里就算编译完成了

配置php.ini

添加以下几行【什么?找不到php.ini。。。。那就whereis php.ini】:

[xhprof]extension=xhprof.soxhprof.output_dir="/path/output/dir"  #这个目录是分析性能输出目录

配置nginx

.xhprof会将收集到的性能数据按文件(一次数据收集存放一个文件)存放在xhprof.output_dir指定的目录(注意添加写权限)下,并通过xhprof/xhprof_html目录下的PHP脚本程序提供网页形式的展示,所以还需配置web服务提供对该脚本程序的访问,以Nginx为例:

 server {         listen 8080;         server_name localhost;         root /path/xhprof/xhprof_html;         location / {            index index.html index.php;            try_files $uri /index.php?$query_string;         }        location ~ \.php$ {            fastcgi_split_path_info ^(.+.php)(/.+)$;            fastcgi_pass unix:/var/run/php5-fpm.sock;            fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;            fastcgi_index index.php;            include fastcgi_params;         }     }安装依赖xhprof_html提供的Web展示功能可以提供代码调用逻辑图,但依赖于工具dot(即该逻辑图是使用dot语言写的),所以需要额外安装依赖graphviz,例如在CentOS上:

实战

要对目标PHP程序进行性能分析,需要在程序中注入xhprof提供的方法调用,来收集性能数据,然后通过命令行执行或HTTP请求来触发。剩下的自己去干吧。。。好运。

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn