목차
【转】给Windows + Apache 2.2 + PHP 5.3 安装PHP性能测试工具 xhprof,性能测试xhprof
백엔드 개발 PHP 튜토리얼 【转】给Windows + Apache 2.2 + PHP 5.3 安装PHP性能测试工具 xhprof,性能测试xhprof_PHP教程

【转】给Windows + Apache 2.2 + PHP 5.3 安装PHP性能测试工具 xhprof,性能测试xhprof_PHP教程

Jul 12, 2016 am 09:07 AM
php5

【转】给Windows + Apache 2.2 + PHP 5.3 安装PHP性能测试工具 xhprof,性能测试xhprof

原文链接:http://blog.snsgou.com/post-816.html

 

1、下载XHProf

到这里 http://dev.freshsite.pl/php-extensions/xhprof.html 下载Windows版本的XHProf,我这里选择下载

XHProf 0.10.3 for PHP 5.3 vc9 和 xhprof_html

 

2、安装XHProf

把压缩包里的 xhprof_0.10.3_php53_vc9.dll 拷贝到PHP的ext目录下,然后在php.ini配置里面加入配置(不要忘记创建对应的文件夹)

[xhprof]
extension=xhprof_0.10.3_php53_vc9.dll
; directory used by default implementation of the iXHProfRuns
; interface (namely, the XHProfRuns_Default class) for storing
; XHProf runs.
xhprof.output_dir="d:/PHP/xhprof/log"
로그인 후 복사

  

3、使用XHProf

xhprof_html.zip 解压到你想测试的网站根目录,如我放在了网站目录的 /public/xhprof/windows 下。

测试文件:

<?php
function bar($x)
{
	if ($x > 0)
	{
		bar($x - 1);
	}
}

function foo()
{
	for ($idx = 0; $idx < 5; $idx++)
	{
		bar($idx);
		$x = strlen("abc");
	}
}

// 启动xhprof
xhprof_enable(XHPROF_FLAGS_CPU + XHPROF_FLAGS_MEMORY);

// 调用foo函数,也是我们要分析的函数
foo();

// 停止xhprof

$xhprof_data = xhprof_disable();

// 取得统计数据
//print_r($xhprof_data);

$os = 'windows';

$XHPROF_ROOT = dirname(__FILE__) . '/public/xhprof/' . $os;
include_once $XHPROF_ROOT . "/xhprof_lib/utils/xhprof_lib.php";
include_once $XHPROF_ROOT . "/xhprof_lib/utils/xhprof_runs.php";

// 保存统计数据,生成统计ID和source名称
$xhprof_runs = new XHProfRuns_Default();
$run_id = $xhprof_runs->save_run($xhprof_data, "xhprof_foo"); // source名称是xhprof_foo

// 查看统计信息
echo "<div style='margin: 50px auto; padding :10px; width: 92px; font-size: 16px; background: #ff0000;'><a style='color:#ffff00;' href='/public/xhprof/" . $os . "/xhprof_html/index.php?run=" . $run_id . "&source=xhprof_foo' target='_blank'>XHProf view</a></div>";
로그인 후 복사

  

当点击链接“[View Full Callgraph]”时,会报错:

<p>failed to execute cmd: " dot -Tpng"</p>
로그인 후 복사

所以还需要下载图形工具 Graphviz

4、下载Graphviz

到这里 http://www.graphviz.org/Download_windows.php 下载Windows版本的Graphviz,我这里选择下载

graphviz-2.38.zip

5、安装Graphviz

解压后,把Graphviz拷贝到某个目录,如 d:/PHP/xhprof/graphviz-2.38/

6、配置Graphviz

找到上述提到网站目录 /public/xhprof/windows/ 下的 config.php 文件,调整如下:

<?php
/**
 * Set the absolute paths on your system
 */
define('ERROR_FILE', 'd:/PHP/xhprof/log/xhprof_dot_errfile.log');
define('TMP_DIRECTORY', 'd:/PHP/xhprof/tmp');
define('DOT_BINARY', 'd:/PHP/xhprof/graphviz-2.38/release/bin/dot.exe');
로그인 후 복사

  重新点击链接 [View Full Callgraph],一张期待已久的效果图出来啦:

 

 

 

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/1061615.htmlTechArticle【转】给Windows + Apache 2.2 + PHP 5.3 安装PHP性能测试工具 xhprof,性能测试xhprof 原文链接:http://blog.snsgou.com/post-816.html 1、下载XHProf 到这里htt...
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

뜨거운 기사 태그

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

php5와 php8의 차이점은 무엇입니까 php5와 php8의 차이점은 무엇입니까 Sep 25, 2023 pm 01:34 PM

php5와 php8의 차이점은 무엇입니까

Jul 24, 2023 pm 04:57 PM

php5가 포트 9000에서 수신 대기하지 않는 문제를 해결하는 방법 php5가 포트 9000에서 수신 대기하지 않는 문제를 해결하는 방법 Jul 10, 2023 pm 04:01 PM

php5가 포트 9000에서 수신 대기하지 않는 문제를 해결하는 방법

php7과 php5 구문의 차이점은 무엇입니까 php7과 php5 구문의 차이점은 무엇입니까 Jul 10, 2023 pm 03:25 PM

php7과 php5 구문의 차이점은 무엇입니까

php7 버전과 5 버전의 차이점은 무엇입니까? php7 버전과 5 버전의 차이점은 무엇입니까? Sep 15, 2023 pm 04:11 PM

php7 버전과 5 버전의 차이점은 무엇입니까?

php5에서 포트 80을 변경하는 방법 php5에서 포트 80을 변경하는 방법 Mar 21, 2023 pm 04:32 PM

php5에서 포트 80을 변경하는 방법

php5가 포트 9000에서 수신 대기하지 않는 문제를 해결하는 방법 php5가 포트 9000에서 수신 대기하지 않는 문제를 해결하는 방법 Mar 21, 2023 pm 04:32 PM

php5가 포트 9000에서 수신 대기하지 않는 문제를 해결하는 방법

PHP7과 PHP5의 구문 차이점에 대해 토론 PHP7과 PHP5의 구문 차이점에 대해 토론 Mar 21, 2023 pm 07:10 PM

PHP7과 PHP5의 구문 차이점에 대해 토론

See all articles