XHProf是Facebook开发的性能调试工具,帮助我们的PHP程序性能调优,更加健壮。XHProf安装和使用方法将在本章讲解。XHProf是PHP的PECL扩展。没有XDeBug那些耗费资源,更加的小巧。
流程:程序开头打点,结尾打点。那么XHProf机会记录在两个点之间的所有代码响应时所耗费的时间、内存、CPU等各项指标,我们也可以知道一次请求调用了多少次MySQL,多少次Memcache,更加直观的指明优化道路。
安装:
<precourier new white-space:pre-wrap padding:9.5px margin-top:0px margin-bottom:10px line-height:1.42857 word-break:break-all word-wrap:break-word border:1px solid rgb background-color:rgb>------------下载并编译PHP-XHProf源码------------
wget http://pecl.php.net/get/xhprof-0.9.4.tgz
tar -zxvf xhprof-0.9.4.tgz
cd xhprof-0.9.4
cd extension
phpize
./configure --enable-xhprof
make
make test
sudo make install
------------修改php.ini---------------
sudo vim /etc/php.ini
#在php.ini最下方加入以下:
extension=xhprof.so
xhprof.output_dir="/var/www/xhprof"
-----------重启Apache--------------
sudo apache restart
解凍したインストール パッケージ フォルダーに移動し、xhprof_lib と xhprof_html をプロジェクト ディレクトリにコピーします。 次に、2 つのドットの先頭であるヘッダー ファイル head.php を作成します: <precourier new white-space:pre-wrap padding:9.5px margin-top:0px margin-bottom:10px line-height:1.42857 word-break:break-all word-wrap:break-word border:1px solid rgb background-color:rgb>//head.php
<?php
if(extension_loaded('xhprof')){
//载入下载的XHPROF包中的2个文件夹
include_once 'xhprof_lib/utils/xhprof_lib.php';
include_once 'xhprof_lib/utils/xhprof_runs.php';
xhprof_enable(XHPROF_FLAGS_CPU + XHPROF_FLAGS_MEMORY);
}
ログイン後にコピー
。次に、2 つのドットの最後のファイル foot.php を作成します: 最後のステップ: ドット。次に、テストファイルindex.phpを作成します。私の大きな Hello World をテストしてください。 http://localhost/index.php の一番下に、foot.php に記述した「結果の表示」があることがわかります。クリックすると、このリクエストで使用されたすべての関数のリストが表示されます。 、CPU、メモリ、および各機能によって消費されるその他の情報は、最初の列をクリックすると選択に従って並べ替えることができます。 [View Full Callgraph] をクリックすると、このリストによって生成されたフローチャートが表示され、エントリ ポイントからどの関数まで、この関数がどの関数を呼び出すか、この関数が Memcache を何回呼び出すかなどが明確になります。 MCコールを減らし、これを減らし、あれを減らし、リクエストの応答速度を速くすることはできますか?ヒント: 1,000 個のファイルがあるので、XHProf を使用してプロジェクト全体をチェックする必要があります。各ファイルの先頭と末尾にインクルードを追加する必要がありますか? php.ini に
//foot.php
save_run($xhprofData, $ns);
//前端展示库的URL
$url = 'http://localhost/xhprof_html/index.php';
$url .= '?run=%s&source=%s';
//变量替换
$url = sprintf($url, $runId, $ns);
//输入URL
echo '查看结果';
}
を追加するか、.htaccess に //index.php
auto_prepend_file = /var/www/head.php
auto_append_file = /var/www/foot.php
上記では、XHProf (PHP パフォーマンス テスト アーティファクト) のインストールと使用方法を、関連する内容も含めて紹介しています。PHP チュートリアルに興味のある友人にとって役立つことを願っています。