xhprof 的基本使用
来源:互联网 发布:radio button value js 编辑:程序博客网 时间:2024/04/29 21:11
编译安装:
# wget http://pecl.php.net/get/xhprof-0.9.4.tgz
# tar -zxvf xhprof-0.9.4.tgz
# cd xhprof-0.9.4
# phpize
# ./configure --with-php-config=/path/to/php-config
# make && make install && make test
修改 php.ini
[xhprof]
extension=xhprof.so
xhprof.output_dir=/path/to/dir # 可选的配置
参考文档:
http://web.archive.org/web/20110514095512/http://mirror.facebook.net/facebook/xhprof/doc.html
代码样例:
<?php
function bar($x) {
if ($x > 0) {
bar($x - 1);
}
}
function foo() {
for ($idx = 0; $idx < 2; $idx++) {
bar($idx);
$x = strlen("abc");
}
}
// XHPROF_FLAGS_CPU(统计CPU数据)
// XHPROF_FLAGS_MEMORY(统计内存占用数据)
// XHPROF_FLAGS_NO_BUILTINS(跳过内置函数的分析)
// 提供参数2: array('ignored_functions'=>array('func1','func2',...)) 忽略分析某些函数
xhprof_enable(XHPROF_FLAGS_CPU + XHPROF_FLAGS_MEMORY);
//此处是要分析的代码
foo();
$xhprof_data = xhprof_disable();
print_r($xhprof_data);exit;
// 调用自动的图形分析工具
$XHPROF_ROOT = "./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_testing");
// 访问该 URL 查看图形化的分析数据
echo "http://localhost/xhprof/xhprof_html/index.php?run={$run_id}&source=xhprof_testing";
结果分析:
$xhprof_data 分析
Array
(
[foo==>bar] => Array
(
[ct] => 2 # number of calls to bar() from foo()
[wt] => 37 # time in bar() when called from foo()
[cpu] => 0 # cpu time in bar() when called from foo()
[mu] => 2208 # change in PHP memory usage in bar() when called from foo()
[pmu] => 0 # change in PHP peak memory usage in bar() when called from foo()
)
[foo==>strlen] => Array
(
[ct] => 2
[wt] => 3
[cpu] => 0
[mu] => 624
[pmu] => 0
)
[bar==>bar@1] => Array # a recursive call to bar()
(
[ct] => 1
[wt] => 2
[cpu] => 0
[mu] => 856
[pmu] => 0
)
[main()==>foo] => Array
(
[ct] => 1
[wt] => 104
[cpu] => 0
[mu] => 4168
[pmu] => 0
)
[main()==>xhprof_disable] => Array
(
[ct] => 1
[wt] => 1
[cpu] => 0
[mu] => 344
[pmu] => 0
)
[main()] => Array
(
[ct] => 1
[wt] => 139
[cpu] => 0
[mu] => 5936
[pmu] => 0
)
)
- xhprof 的基本使用
- xhprof的使用
- php xhprof 扩展的使用
- Xhprof的安装与使用
- xhprof性能工具的使用
- xhprof使用
- linux下XHProf的安装和使用
- 使用 XHProf 分析你的 PHP 程序
- 【程序性能分析】xhprof的使用例子
- 使用 XHProf 分析你的 PHP 程序
- window wamp下xhprof的安装使用
- xhprof扩展的安装和简单使用
- xhprof安装和使用
- XHProf安装使用笔记
- XHProf安装使用笔记
- XHProf安装使用笔记
- XHProf安装使用笔记
- xhprof安装&&使用
- Windows Media Player 与 ActiveMove Window遇到的相关问题
- mysql常见问题整理
- Android跳转到通讯录获取用户名称和手机号码
- 【转】linux下升级gcc的方法 – 亲测可用
- BootStrap 模态框实现刷新网页并关闭
- xhprof 的基本使用
- linux下备份一个目录下所有文件及目录
- spring中使用@RequestBody,对应的bean中属性名大写注入为空的解决方法
- 12种排序算法:原理、图解、动画视频演示、代码以及笔试面试题目中的应用
- dialog形式的activity屏幕触摸事件总结
- java 错误抛出顺序
- iOS-阿里面试题
- 第十八课 数学库
- JAVA 线程调度