自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Ubuntu下如何使用Xdebug分析PHP程序的瓶頸?

運維 系統(tǒng)運維
編程中,80%的性能瓶頸是由20%的代碼引起的。Ubuntu下借助PHP的XDebug擴展,可以有效地找出這20%的代碼。希望能夠?qū)Υ蠹矣兴鶐椭?

Ubuntu下使用Xdebug可分析出PHP程序的瓶頸,具體內(nèi)容如下所述。

經(jīng)濟學(xué)中有一條著名的80-20定律,引用到編程中,就是:80%的性能瓶頸是由20%的代碼引起的。

Ubuntu下借助PHP的XDebug擴展,可以有效地找出這20%的代碼。

一、安裝配置

1、下載PHP的XDebug擴展,網(wǎng)址:http://xdebug.org/

2、在Ubuntu下編譯安裝XDebug

 

  1. sudotarvxfxdebug-2.1.0.tgzcdxdebug-2.1.0.tgz  
  2.  
  3. sudo/usr/local/php/bin/phpize  
  4.  
  5. sudo./configure--enable-xdebug--with-php-config=/usr/local/php/bin/php-config  
  6.  
  7. sodumake&&makeinstall 

 

注:安裝完成之后在/usr/local/php/lib/php/extension/no-debug-non-zts-20090626下會有一個xdebug.so文件

 

  1. soduvim/usr/local/php/lib/php.ini 

 

修改php.ini,增加以下配置信息支持XDebug擴展

 

  1. zend_extension=/usr/local/php/lib/php/extensions/no-debug-non-zts-20090626/xdebug.so  
  2.  
  3. [Xdebug]  
  4.  
  5. xdebug.auto_trace=On 
  6.  
  7. xdebug.collect_params=On 
  8.  
  9. xdebug.collect_return=On 
  10.  
  11. xdebug.trace_output_dir="/tmp/xdebug" 
  12.  
  13. xdebug.profiler_enable=On 
  14.  
  15. xdebug.profiler_output_dir="/tmp/xdebug" 
  16.  
  17. xdebug.profiler_output_name="cachegrind.out.%c" 

 

修改文件夾權(quán)限,使xdebug能夠在指定文件夾中寫log

 

  1. sudomkdir-p/tmp/xdebug  
  2.  
  3. sudochmod777/tmp/xdebug  
  4.  
  5. sudochowngroup:user/tmp/xdebug  
  6.  
  7. sudo/usr/local/apache/bin/apachectl-krestart 

 

此時,xdebug應(yīng)該已經(jīng)配置成功了,可以使用來查看php信息,如果有xdebug這么一欄,則說明安裝成功。

這時,每當使用web瀏覽器訪問一次php文件,就會產(chǎn)生一個相應(yīng)時間戳的log文件,可以查看它記錄的信息。

我使用的log分析軟件是WinCacheGrind,因為是windows版,所以需要使用wine啟動。

接下來,進入WinCacheGrind就能看到每個函數(shù)執(zhí)行的時間了~

總結(jié):

希望本文介紹的在Ubuntu下使用Xdebug分析PHP程序的瓶頸的內(nèi)容能夠?qū)ψx者有所幫助,更多有關(guān)linux系統(tǒng)的知識還有待于讀者去探索和學(xué)習(xí)。

【編輯推薦】

  1. 在Ubuntu下如何使用TAP網(wǎng)卡?
  2. Ubuntu10.10下如何配置和使用SSH?
  3. Ubuntu終端下Nethogs網(wǎng)絡(luò)流量監(jiān)控工具
  4. Ubuntu10.04下載Android2.2源代碼的步驟
  5. Ubuntu中GRUB2管理器GrubCustomizer的安裝方法
責(zé)任編輯:韓亞珊 來源: 雨林木風(fēng)
相關(guān)推薦

2010-10-18 09:59:22

PHP程序員Web開發(fā)

2022-08-22 16:04:00

WiresharkTCP吞吐

2011-05-11 17:49:12

PHP

2011-09-15 17:30:55

ubuntuSSH

2011-09-02 19:26:38

2011-09-05 13:41:32

UbuntueCryptfs

2011-08-30 15:19:23

2011-03-11 10:39:05

LAMP錯誤提示

2020-12-29 15:00:46

PerfVTune工具

2011-09-15 16:44:36

UbuntuGoldenDict

2009-12-02 13:53:12

PHP使用技巧

2011-09-02 16:12:48

ubuntuskipfish

2011-09-07 14:01:34

ubuntuPHP

2011-09-07 17:28:32

ubuntuproj

2011-08-30 15:53:07

Ubuntussh

2011-09-15 10:52:09

2019-10-31 11:50:19

MySQL數(shù)據(jù)庫Windows

2009-03-01 21:53:48

UbuntuChrome使用開發(fā)

2011-03-21 09:17:06

UbuntuNagios

2009-07-15 17:52:23

sqlite jdbc
點贊
收藏

51CTO技術(shù)棧公眾號