ホームページ >バックエンド開発 >PHPチュートリアル >PHP パフォーマンス監視拡張機能 xhprof パフォーマンス分析ツール

PHP パフォーマンス監視拡張機能 xhprof パフォーマンス分析ツール

WBOY
WBOYオリジナル
2016-07-25 09:13:191357ブラウズ

PHP パフォーマンス監視拡張機能 xhprof は一般に優れたツールです。このセクションでは、Ubuntu でのインストールと使用のプロセスを紹介します。

xhprof をインストールします。

  1. wget http://pecl.php.net/get/xhprof-0.9.2.tgz
  2. tar zxf xhprof-0.9.2.tgz
  3. cd xhprof-0.9.2/extension/
  4. sudo phpize
  5. ./configure --with-php-config=/usr/local/php/bin/php-config
  6. sudo make
  7. sudo make install
コードをコピー

デバッグ結果をグラフィカルに表示するには、また、graphviz ツールをインストールするには、apt-get を使用して ubuntu に直接インストールする必要があります。コマンドは sudo apt-get installgraphviz です。 別のシステムの場合は、少し工夫が必要になる場合があります。コマンドは次のとおりです。

  1. wget http://www.graphviz.org/pub/graphviz/stable/sources/graphviz-2.24.0.tar.gz
  2. tar zxfgraphviz-2.24.0.tar.gz
  3. cdgraphviz- 2.24.0
  4. ./configure
  5. make && make install
コードをコピー

次にphp.iniを設定します

php.iniを追加します:

  1. [xhprof]
  2. extension=xhprof.so;
  3. ; xhprofruns
  4. インターフェイスのデフォルト実装によって使用されるディレクトリ (つまり、xhprofruns_default クラス)
  5. ;
  6. ;xhprof.output_dir; =
  7. xhprof.output_dir=/tmp/xhprof
コードをコピー
注: 64 ビット システムの場合は、xhprof.so ファイルを関連する lib ディレクトリ (lib64) にコピーする必要があります。 )

変更後、Apacheを再起動し、phpinfoを確認すると、xhprofに関する情報が表示されるはずです。

テストするコードをphpに追加します

    // cpu:xhprof_flags_cpu メモリ: xhprof_flags_memory
  1. // 両方が一緒の場合: xhprof_flags_cpu + xhprof_flags_memory
  2. xhprof_enable(xhprof_flags_cpu + flags_memo ry);
  3. //テストする PHP コード
  4. $data = xhprof_disable(); //実行中のデータを返します
  5. // ダウンロードしたパッケージのこのディレクトリに xhprof_lib が存在します。このディレクトリを実行中の PHP コードに忘れずに含めてください
  6. include_once "xhprof_lib/utils/xhprof_lib.php";
  7. include_once "xhprof_lib / utils/xhprof_runs.php";
  8. $objxhprofrun = new xhprofruns_default();
  9. // 最初のパラメーター j は、xhprof_disable() 関数によって返される実行情報です
  10. // 2 番目のパラメーターは、カスタム名前空間文字列 (任意) string),
  11. //実行 ID を返します。この ID を使用して関連する実行結果を表示します
  12. $run_id = $objxhprofrun->save_run($data, "xhprof");
  13. var_dump($run_id);
Copyコード
実行結果を表示します: xhprof_lib&&xhprof_html 関連ディレクトリをアクセス可能なアドレスにコピーします

php コードの実行ステータスを確認するには、xxx/xhprof_html/index.php?run=$run_id にアクセスしてください。$run_id は、上記のページに出力された内容です。必要がない場合は、xhprof_lib に忘れずに含めてください。このメソッドを使用するには、関連する印刷情報を直接出力することもできます。つまり、上記の $data の値を直接 print_r 出力します。

パラメータの説明:

包括時間には、サブ関数のすべての実行時間が含まれます。 排他的時間/自己時間 サブツリーの実行時間を除く、関数自体の実行にかかる時間。 ウォールタイム経過時間またはウォールクロック時間。 CPU時間 ユーザー時間 + カーネル時間 包括的な CPU には、サブ関数が一緒に占有する CPU が含まれます 専用CPU 関数自体が占有するCPU

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。