php性能分析工具 xhprof,php 性能分析工具 xhprof

3402e14528819dfbb5754d41a86d4d6d.png

php 安装 xhprof 扩展 (兼容php5、7)git clone git@github.com:longxinH/xhprof.git

cd xhprof/extension/

/usr/local/php7/bin/phpize

./configure --with-php-config=/usr/local/php7/bin/php-config

make

sudo make install

扩展编译完成,确定一下ls /usr/local/php7/lib/php/extensions/no-debug-non-zts-20180731/xhprof.so

添加切片文件 vi /tmp/xhprof.prepend.php<?php

xhprof_enable(XHPROF_FLAGS_NO_BUILTINS | XHPROF_FLAGS_CPU | XHPROF_FLAGS_MEMORY);

define('XHPROF_START_TIME', microtime(true));

register_shutdown_function(function () {

$xhprof_time = microtime(true) - XHPROF_START_TIME;

$xhprof_data = xhprof_disable();

if ($xhprof_time > 2 && !empty($xhprof_data)) { // 采样大于两秒的请求

if (!is_dir('/tmp/xhprof/')) {

mkdir('/tmp/xhprof/', 0777, true);

}

$xhprof_file = '/tmp/xhprof/' . date('YmdHis0000') . uniqid() . '.'

. str_replace('.', '_', strtolower((isset($_SERVER['HTTP_HOST']) ? $_SERVER['HTTP_HOST'] : 'NOHOST')

. '-' . (isset($_SERVER['REQUEST_METHOD']) ? $_SERVER['REQUEST_METHOD'] : 'NOMETHOD')))

. '.xhprof';

file_put_contents($xhprof_file, serialize($xhprof_data));

}

});

vi /usr/local/php7/lib/php.ini[xhprof]

extension=xhprof.so

xhprof.output_dir = /tmp/xhprof

xhprof.collect_additional_info = 1

auto_prepend_file ="/tmp/xhprof.prepend.php";

配置 xhprof.com 根目录为 xhprof 仓库

重启 apache or php-fpm

查看性能报告

查看性能报告中的 [View Full Callgraph],安装 graphviz 即可

yum install graphviz

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值