PHP性能监控

来源:互联网 发布:js定时器 内存满了 编辑:程序博客网 时间:2024/05/23 13:21
xhprof是PHP性能分析的扩展,项目地址:https://github.com/phacility/xhprof,最新维护是在2013年的9月份。

安装:安装php扩展的方式安装。
文档:http://php.net/xhprof

使用xhprof之前,首先进行配置,xhprof的配置非常简单,仅仅有一个配置项

xhprof.output_dir string

储存 XHProf 运行数据的默认目录,用于接口 iXHProfRuns(即 XHProfRuns_Default 类)。


使用
不同于xdebug,xhprof是入侵式的,需要改动代码才能跟踪代码请求的堆栈信息
范例参考:http://php.net/manual/zh/xhprof.examples.php

<?php
//启动xhprof性能分析器
xhprof_enable(XHPROF_FLAGS_CPU + XHPROF_FLAGS_MEMORY + XHPROF_FLAGS_NO_BUILTINS);

for ($i = 0; $i <= 1000; $i++) {
    $a = $i * $i;
}
//停止xhprof分析器
$xhprof_data = xhprof_disable();

$XHPROF_ROOT = "/apps/dat/web/working/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");

echo "http://xhprof.local.com/xhprof_html/index.php?run={$run_id}&source=xhprof_testing\n";

?>

此外,另外部署xhprof目录作为web目录即可,访问输出的连接,可以进行分析


备注,如果遇到502,请使用

xhprof_enable(XHPROF_FLAGS_CPU + XHPROF_FLAGS_MEMORY + XHPROF_FLAGS_NO_BUILTINS);
原创粉丝点击