Heim > Backend-Entwicklung > PHP-Tutorial > PHP-Leistungsanalysetool – Installation und Verwendung von xhprof

PHP-Leistungsanalysetool – Installation und Verwendung von xhprof

WBOY
Freigeben: 2016-07-30 13:31:50
Original
920 Leute haben es durchsucht

1. Vorwort

Es ist besser, die nützlichen Dinge aufzuzeichnen, was diesmal auch die Installation und Verwendung von xhprof erleichtert; >

xhprof ist ein von Facebook bereitgestelltes, leichtes PHP-Leistungsanalysetool. Es ähnelt Xdebug, weist jedoch einen geringeren Leistungsaufwand auf Wenn Sie in Produktionsumgebungen verwendet werden, können Sie auch den Programmschalter verwenden, um zu steuern, ob ein Profil erstellt werden soll.

2. Installation

3. php.ini-Konfiguration

<spanmicrosoft yahei>1.    wget http:<span>//</span><span>pecl.php.net/get/xhprof-0.9.3.tgz  </span>
2.    tar zxf xhprof-0.9.3.<span>tgz  

</span>3.    cd xhprof-0.9.3/<span>extension

</span>4.    /usr/bin/<span>phpize 
     (php版本安装后生成的phpize文件,可根据phpinfo查看,所以php版本不同,生成的phpize也不同,此步骤主要生成configure文件)

</span>5.    ./configure  –with-php-c/bin/php-<span>config  
    (php</span>-<span>config的路径,也是php安装后生成的文件)  

</span>6.<span>    make  

</span>7.<span>    sudo make install 
    (会自动将生成的扩展文件拷贝到扩展目录中</span>/usr/lib64/php/<span>modules)

    当然具体的php文件的目录,每个人不尽相同,可根据phpinfo查询</span></spanmicrosoft>
Nach dem Login kopieren

4. Starten Sie den Dienst neu

<spanmicrosoft yahei><span>1</span><span>根据phpinfo找到 extension_dir的目录
</span><span>2</span> (/etc/php.d/xhprof.<span>ini)
</span><span>3</span><span>4</span><span>添加一下内容:
</span><span>5</span><span>6</span> extension=xhprof.<span>so
</span><span>7</span> xhprof.output_dir=/tmp/xhprof <span>//</span><span>xhprof的分析日志</span></spanmicrosoft>
Nach dem Login kopieren

So verwenden Sie ihn

<spanmicrosoft yahei><span>1</span> sudo /etc/init.d/<span>http restart
</span><span>2</span><span>3</span> 查看phpinfo是否安装成功</spanmicrosoft>
Nach dem Login kopieren

Der obige Code verwendet die Methode zum Einrichten eines virtuellen Hosts für xhprof.

<spanmicrosoft yahei><span> 1</span><span>开头:
</span><span> 2</span> xhprof_enable(); <span>//</span><span>开启监测  
</span><span> 3</span><span>//xhprof_enable(XHPROF_FLAGS_NO_BUILTINS); 不记录内置的函数  
</span><span> 4</span><span>//xhprof_enable(XHPROF_FLAGS_CPU + XHPROF_FLAGS_MEMORY);  同时分析CPU和Mem的开销  
</span><span> 5</span><span> 6</span><span>//要测试的代码</span><span> 7</span> ...
<span> 8</span> ...
<span> 9</span> ...
<span>10</span><span>11</span><span>结尾:
</span><span>12</span><span>$xhprof_data</span> = xhprof_disable();  <span>//</span><span>停止监测,返回运行数据</span><span>13</span><span>$xhprof_root</span> = '/(xhprof的虚拟主机目录)/'<span>;  
</span><span>14</span><span>//</span><span>引入当初安装到xhprof虚拟主机目录中的文件</span><span>15</span><span>include_once</span><span>$xhprof_root</span>."xhprof_lib/utils/xhprof_lib.php"<span>;  
</span><span>16</span><span>include_once</span><span>$xhprof_root</span>."xhprof_lib/utils/xhprof_runs.php"<span>;   
</span><span>17</span><span>$xhprof_runs</span> = <span>new</span><span> XHProfRuns_Default();   
</span><span>18</span><span>$run_id</span> = <span>$xhprof_runs</span>->save_run(<span>$xhprof_data</span>, "xhprof"<span>);
</span><span>19</span><span>echo</span> '<a href="http://(xhprof的虚拟主机域名)/xhprof_html/index.php?run='.<span>$run_id</span>.'&source=xhprof" target="_blank">xhprof统计</a>'<span>;  </span></spanmicrosoft>
Nach dem Login kopieren

Kopieren Sie die Ordner xhprof_html und xhprof_lib im Quellpaket in das von Ihnen erstellte virtuelle Verzeichnis

cp -r xhprof_html xhprof_lib /xxx/ xhprof/ (Der Zweck besteht hier darin, ein Datenanalyseverzeichnis einzurichten, das als virtueller Host für den Zugriff konfiguriert werden kann.)

Klicken Sie nach dem Ausführen auf den zurückgegebenen xhprof-Statistik-Link.

6. Achtungsprobleme und Begriffserklärungen

Klicken Sie auf der angezeigten Statistikseite auf [Vollständiges Anrufdiagramm anzeigen] für eine grafische Anzeige (die größte). Leistungsprobleme werden in Rot hervorgehoben, gefolgt von Gelb);

Nach dem Klicken wird möglicherweise eine Fehlermeldung angezeigt: Führen Sie einfach den folgenden Befehl aus: 🎜>

Begriffserklärung

<spanmicrosoft yahei><span>1</span> yum install -<span>y graphviz
</span><span>2</span> yum install graphviz-gd</spanmicrosoft>
Nach dem Login kopieren
7. Referenzmaterialien

<spanmicrosoft yahei><span> 1</span><span>Function</span><span> Name 函数名
</span><span> 2</span><span>    Calls 调用次数
</span><span> 3</span>     Calls%<span> 调用百分比
</span><span> 4</span>     Incl. Wall <span>Time</span><span> (microsec) 调用的包括子函数所有花费时间 以微秒算(一百万分之一秒)
</span><span> 5</span>     IWall%<span> 调用的包括子函数所有花费时间的百分比
</span><span> 6</span>     Excl. Wall <span>Time</span> (microsec) 函数执行本身花费的时间,不包括子树执行时间,<span>以微秒算(一百万分之一秒)
</span><span> 7</span>     EWall%<span> 函数执行本身花费的时间的百分比,不包括子树执行时间
</span><span> 8</span>     Incl. CPU(microsecs) 调用的包括子函数所有花费的cpu时间。减Incl.<span> Wall Time即为等待cpu的时间
</span><span> 9</span>     减Excl.<span> Wall Time即为等待cpu的时间
</span><span>10</span>     ICpu% Incl.<span> CPU(microsecs)的百分比
</span><span>11</span>     Excl. CPU(microsec) 函数执行本身花费的cpu时间,不包括子树执行时间,<span>以微秒算(一百万分之一秒)。
</span><span>12</span>     ECPU% Excl.<span> CPU(microsec)的百分比
</span><span>13</span>     Incl.<span>MemUse(bytes) 包括子函数执行使用的内存。
</span><span>14</span>     IMemUse% Incl.<span>MemUse(bytes)的百分比
</span><span>15</span>     Excl.MemUse(bytes) 函数执行本身内存,<span>以字节算
</span><span>16</span>     EMemUse% Excl.<span>MemUse(bytes)的百分比
</span><span>17</span>     Incl.PeakMemUse(bytes) Incl.<span>MemUse的峰值
</span><span>18</span>     IPeakMemUse% Incl.<span>PeakMemUse(bytes) 的峰值百分比
</span><span>19</span>     Excl.PeakMemUse(bytes) Excl.<span>MemUse的峰值
</span><span>20</span>     EPeakMemUse% EMemUse% 峰值百分比</spanmicrosoft>
Nach dem Login kopieren

Das Obige stellt die Installation und Verwendung des PHP-Leistungsanalysetools xhprof vor, einschließlich der relevanten Inhalte. Ich hoffe, dass es für Freunde hilfreich ist, die sich für PHP-Tutorials interessieren.

<spanmicrosoft yahei><span>1</span> http:<span>//</span><span>blog.csdn.net/maitiandaozi/article/details/8896293</span><span>2</span> http:<span>//</span><span>www.cnblogs.com/wangtao_20/archive/2011/03/16/1986508.html</span><span>3</span> http:<span>//</span><span>www.cnblogs.com/wangtao_20/archive/2013/09/13/3320497.html</span><span>4</span><span>5</span> http:<span>//</span><span>avnpc.com/pages/profiler-php-performance-online-by-xhprof</span><span>6</span> http:<span>//</span><span>www.ituring.com.cn/article/133062?utm_source=tuicool</span></spanmicrosoft>
Nach dem Login kopieren
Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage