erikwang2013/xhprof-webman

简介

aaron-dev/xhprof-webman是一款适配webman的代码性能分析插件。
主要对旧版且无法使用的xhprof做优化调整,用于适配webman,安装简单快捷。
开发者可以通过浏览器快速访问性能分析报告,排查代码性能问题。

作者博客

艾瑞可erik

安装

php要安装xhprof扩展
在php.ini中增加配置

1
2
3
4
[xhprof]
extension=xhprof.so;
xhprof.output_dir=/tmp/xhprof;

Use Composer:

1
composer require aaron-dev/xhprof-webman

配置

  1. config增加全局中间件
1
2
3
'' => [
Aaron\Xhprof\Webman\XhprofMiddleware::class,
]
  1. 创建控制器,复制下面代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<?php

namespace app\controller;

use support\Request;
use Aaron\Xhprof\Webman\Xhprof;

class TestController
{
public function index(Request $request)
{
return Xhprof::index();
}
}

  1. 路由增加以下代码(页面入口 + 静态资源,静态资源从包内直接提供,无需复制到 public)
1
2
Route::get('/test', ['app\controller\TestController','index']);
Route::get('/xhprof-assets/{path:.+}', [\Aaron\Xhprof\Webman\StaticController::class, 'serve']);
  1. 基础配置在 config/plugin/aaron-dev/xhprof/xhprof.php 中
1
2
3
4
5
6
'enable' => true,
'time_limit' => 0,
'log_num' => 1000,
'view_wtred' => 3,
'ignore_url_arr' => ["/test"],
'assets_url' => '/xhprof-assets', // 静态资源 URL,须与上面路由中的 path 一致
  1. 然后重启服务就可以访问了。

本插件参考phacility/xhprofphpxxb/xhprof