文档章节

亲自在win7下安装xhprof

webphp
 webphp
发布于 2017/07/26 11:28
字数 1261
阅读 249
收藏 0

#程序员薪资揭榜#你做程序员几年了?月薪多少?发量还在么?>>>

最近发现在以往的工作中php项目做的很多。具体的压力测试没有做过,今天感兴趣做一下项目的压力测试,选用Facebook的轻量级调试工具xhprof,和Xdebug相比xhprof更加易用和可控.尤其是生成流程图和调试数据对比的功能很好很强大。但是在网上找了一堆都是在linux服务器上运行的。可以在本地开发的时候有需要用调试的时候不可能一下就搬到linux服务环境之上的,所以就在本地进行按装,先下载适合于win7 上的xhprof的dll文件。 具下载地址: (以下为xhprof的dll文件,根据本地php版本选择以下两种的xhprof的任意一种,以下两种都是win7 32位,如果需要64位的自行在网上查找一下) php_xhprof_0.10.0_PHP_5.3.3_VC6_x86_Thread_Safe具体是支持php5.3.3,正好本地的php环境是wamp的集成环境。 链接: http://pan.baidu.com/s/1sjNoOVF 密码:wu50 xhprof-0.10.3-PHP-5.4-vc9-ts.zip是支持php5.4下载地址如下: 链接: http://pan.baidu.com/s/1ntC7CEX 密码:w1i5 以下为要测试站点的目录下要生成的报告,xhprof_html要放在测试站点的根目录下 下载xhprof_html这个文件放到测试站点的根目录下,下载地址: 链接: http://pan.baidu.com/s/1gdkt8LP 密码:90so 1、解压以后复制到php的安装目录下ext目录,可以看到这个目录下的文件,都是php一些扩展的dll文件,xhprof的原理和这些一样 2、修改php.ini文件,具体要加入以下代码
extension=php_xhprof.dll
[xhprof]
; directory used by default implementation of the iXHProfRuns
; interface (namely, the XHProfRuns_Default class) for storing
; XHProf runs.
xhprof.output_dir="D:/wamp/www/xhprof"#(这个根据自己的方便自行设置,可以自己配置生成的报告的位置)
3、重启所有的服务 4、然后通过运行phpinfo(),查看是否有xhprof,如果有,就标示成功了   5、xhprof_html.zip 这个文件解压到你想测试的网站根目录就好了 现在网站一般使用的是框架,唯一入口这点最好了,直接在index.php里面写就好了
xhprof_enable();//开始
//此部分为框架的程序代码
$xhprof_data = xhprof_disable();//结束,然后写入文件,注意目录
$XHPROF_ROOT = realpath(dirname(__FILE__).'/xhprof');
include_once $XHPROF_ROOT . "/xhprof_lib/utils/xhprof_lib.php";
include_once $XHPROF_ROOT . "/xhprof_lib/utils/xhprof_runs.php";
$xhprof_runs = new XHProfRuns_Default();
$run_id = $xhprof_runs->save_run($xhprof_data, "xhprof_foo");
echo "<a href='http://zhihui.sibo.com/xhprof/xhprof_html/?run=$run_id&source=xhprof_foo'>分析</a>";
//这里的zhihui.sibo.com换成你自己的域名就好了,这是我在本地自己解析的一个站点域名
以下为xhprof的缩写
Inclusive Time 包括子函数所有执行时间。
Exclusive Time/Self Time 函数执行本身花费的时间,不包括子树执行时间。
Wall Time 花去了的时间或挂钟时间。
CPU Time 用户耗的时间+内核耗的时间
Inclusive CPU 包括子函数一起所占用的CPU
Exclusive CPU 函数自身所占用的CPU
可是运行以后老是报错:查找原因为xhprof目录下的config.php的路径有问题,还有就是graphaiz 生成结构图的工具没有安装
<?php
/*
 * Set the absolute paths on your system
 */
define('ERROR_FILE', 'd:/wamp/logs/xhprof_dot_errfile.log');
define('TMP_DIRECTORY', 'd:/wamp/tmp/xhprof/tmp/');
define('DOT_BINARY', 'C:/Program Files/Graphviz2.38/bin/dot.exe');
?>
备注内容:因为xhprof在生成调试信息的时候,要生成一个利用graphviz生成一个结构图,如果本地没有安装graphviz,则要安装graphviz. 百度搜索中输入"graphviz",即可找到该工具的官方网站。 http://www.graphviz.org/ 点击download 点击选中的红色部分 下载成功以后安装 最后附上xhprof的结果说明 表单中的:
列名 描述
Function Name 方法名称。
Calls 方法被调用的次数。
Calls% 方法调用次数在同级方法总数调用次数中所占的百分比。
Incl.Wall Time (microsec) 方法执行花费的时间,包括子方法的执行时间。(单位:微秒)
IWall% 方法执行花费的时间百分比。
Excl. Wall Time (microsec) 方法本身执行花费的时间,不包括子方法的执行时间。(单位:微秒)
EWall% 方法本身执行花费的时间百分比。
Incl. CPU (microsecs) 方法执行花费的CPU时间,包括子方法的执行时间。(单位:微秒)
ICpu% 方法执行花费的CPU时间百分比。
Excl. CPU (microsec) 方法本身执行花费的CPU时间,不包括子方法的执行时间。(单位:微秒)
ECPU% 方法本身执行花费的CPU时间百分比。
Incl.MemUse (bytes) 方法执行占用的内存,包括子方法执行占用的内存。(单位:字节)
IMemUse% 方法执行占用的内存百分比。
Excl.MemUse (bytes) 方法本身执行占用的内存,不包括子方法执行占用的内存。(单位:字节)
EMemUse% 方法本身执行占用的内存百分比。
Incl.PeakMemUse (bytes) Incl.MemUse峰值。(单位:字节)
IPeakMemUse% Incl.MemUse峰值百分比。
Excl.PeakMemUse (bytes) Excl.MemUse峰值。单位:(字节)
EPeakMemUse% Excl.MemUse峰值百分比。
 

© 著作权归作者所有

webphp
粉丝 1
博文 92
码字总数 92338
作品 0
海淀
程序员
私信 提问
加载中

评论(0)

php性能测试工具--xhprof的安装

xhprof是facebook开源出来的一个php性能测试工具,在facebook开发过程中被广泛应用。 一、xhprof的安装网站推广 1.下载地址:http: //pecl.php.net/get/xhprof-0.9.2.tgz 在linux下,执行命令...

网络营销
2012/01/16
170
0
[原创] 在CentOS环境里ThinkPHP框架下如何配置XHProf

XHProf是facebook开源出来的一个php轻量级的性能分析工具,跟Xdebug类似,但性能开销更低,还可以用在生产环境中,也可以由程序开 关来控制是否进行profile。 以下是在CentOS下的记录和总结:...

SunnyGo
2012/05/16
2.9K
0
CentOS使用yum安装php性能测试工具xhprof

1.首先我们安装xhprof: yum install xhprof 2.安装好之后,找到xhprof的配置文件xhprof.conf,一般会在/etc/php.d里面,加入这2行: extension=xhprof.soxhprof.outputdir=<directoryforsto...

Surjur
2015/02/03
900
0
[PHP]函数级分层性能分析工具-Xhprof的安装与使用

PHP性能分析工具-Xhprof的安装与使用 XHProf 是一个轻量级的分层性能测量分析器。 XHProf 包含了一个基于 HTML 的简单用户界面(由 PHP 写成)。 基于浏览器的用户界面使得浏览、分享性能数据结...

王永濤
2016/09/12
176
0
facebook的php性能分析工具--xhprof

原文链接:http://www.cleey.com/blog/single/id/439.html pecl安装看这里:http://www.cleey.com/blog/single/id/816.html xhprof为facebook的php性能分析工具,xhprof安装,这里我先贴出大...

Cleey
2016/01/04
2.4K
3

没有更多内容

加载失败,请刷新页面

加载更多

Go Gin 简明教程

https://geektutu.com/post/quick-go-gin.html

Java搬砖工程师
52分钟前
19
0
2020中台建设-中台概述

一,什么是中台 ①,中台是能力的共享和沉淀, ②,中台是为前台服务的,有了中台,可快速构建前台应用. 二,为什么建设中台 ①,能力共享和沉淀,避免烟囱似建设 ②,快速搭建前台. 三,怎么建设中台 ...

Original123
54分钟前
15
0
如何更改远程Git存储库的URI(URL)? - How to change the URI (URL) for a remote Git repository?

问题: I have a repo (origin) on a USB key that I cloned on my hard drive (local). 我在硬盘驱动器(本地)上克隆的USB密钥上有一个回购(来源)。 I moved "origin" to a NAS and succ......

技术盛宴
今天
26
0
连接热点的电脑能注册到开热点电脑的注册中心,但是网关不能路由到服务实例

类似问题描述 1.连接热点的电脑能注册到开热点电脑的注册中心,但是网关不能路由到服务实例。2.微服务注册到到Eureka注册中心的ip不正确,导致网关路由不到具体为服务实例。3.Eureka注册...

LoSingSang
今天
14
0
利用flask部署keras模型报错

利用flask部署keras模型时报错: Tensor("dense_2/Softmax:0", shape=(?, 26), dtype=float32) is not an element of this graph. 解决方法 import tensorflow as tfgraph = tf.get_default......

hc321
今天
21
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部