使用XDebug和WinCacheGrind分析PHP性能
WEB性能日志工具
1.MySQL慢查詢?nèi)罩?/p>
2.Xdebug日志
說(shuō)道PHP代碼調(diào)試,對(duì)于有經(jīng)驗(yàn)的PHPer,通過(guò)echo、print_r、var_dump函數(shù),或PHP開(kāi)發(fā)工具zend studio、editplus可解決大部分問(wèn)題,但是對(duì)于PHP入門學(xué)習(xí)的童鞋來(lái)說(shuō)有一定的難度,而且僅僅通過(guò)上述這些PHP調(diào)試手段,也很難準(zhǔn)確發(fā)現(xiàn)PHP性能方面的問(wèn)題,Xdebug是一個(gè)非常有用的PHP調(diào)試工具?。
Xdebug作為PHP調(diào)試工具,提供了豐富的調(diào)試函數(shù),也可將Xdebug安裝配置為zend studio、editplus調(diào)試PHP的第三方插件,通過(guò)開(kāi)啟自動(dòng)跟蹤(auto_trace)和分析器功能,可以直觀的看到PHP源代碼的性能數(shù)據(jù),以便優(yōu)化PHP代碼。今天和大家分享PHP調(diào)試工具Xdebug安裝以及配置方面的基礎(chǔ)知識(shí)。
Xdebug安裝教程
下載Xdebug?????? http://xdebug.org
首先我們需要下載Xdebug,務(wù)必根據(jù)安裝的PHP版本,選擇合適的Xdebug版本 ,如果你不清楚安裝的PHP版本,你可以通過(guò)phpinfo()函數(shù)參看
安裝Xdebug
將下載的php_xdebug-2.1.0-5.3-vc6.dll復(fù)制到PHP安裝目錄下的ext目錄,ext目錄專門用來(lái)存放PHP擴(kuò)展庫(kù)DLL文件。
配置php.ini
安裝Xdebug的最后一步就是配置php.ini文件,在末尾添加
最后重啟Apache服務(wù)器,通過(guò)phpinfo()函數(shù),可以看到
利用Xdebug測(cè)試腳本執(zhí)行時(shí)間
使用Xdebug_time_index()來(lái)顯示時(shí)間
測(cè)試腳本占用的內(nèi)存:
xdebug_memory_usage()
xdebug還提供了一個(gè)xdebug_peak_memory_usage()來(lái)查看內(nèi)存占用的峰值
Xdebug部分配置選項(xiàng)說(shuō)明
xdebug.auto_trace = 1
是否允許Xdebug跟蹤函數(shù)調(diào)用,跟蹤信息以文件形式存儲(chǔ),默認(rèn)值為0
collect_params = 1
是否允許Xdebug跟蹤函數(shù)參數(shù),默認(rèn)值為0
xdebug.collect_return = 1
是否允許Xdebug跟蹤函數(shù)返回值,默認(rèn)值為0
xdebug.profiler_enable = 1
打開(kāi)xdebug的性能分析器,以文件形式存儲(chǔ),這項(xiàng)配置是不能以ini_set()函數(shù)配置的,默認(rèn)值為0
xdebug.profiler_output_dir
性能分析文件的存放位置,默認(rèn)值為/tmp
xdebug.profiler_output_name
性能分析文件的命名規(guī)則,默認(rèn)值為cachegrind.out.%p
xdebug.trace_output_dir
函數(shù)調(diào)用跟蹤信息輸出文件目錄,默認(rèn)值為/tmp
xdebug.trace_output_name
函數(shù)調(diào)用跟蹤信息輸出文件命名規(guī)則,默認(rèn)為trace.%c
特別說(shuō)明:Xdebug的trace和profiler的輸出文件名規(guī)則是可以更改的,比如將文件名命名為具體跟蹤的PHP執(zhí)行文件名、進(jìn)程ID、隨機(jī)數(shù)等,非常方便,更多的Xdebug配置選項(xiàng)說(shuō)明,請(qǐng)參考官網(wǎng)的Xdebug配置選項(xiàng)說(shuō)明。
至此PHP調(diào)試工具Xdebug教程之Xdebug的安裝和配置就介紹完了,今后還將陸續(xù)介紹Xdebug如何在zend studio以及editplus中配置使用。
Xdebug的crontab定時(shí)刪除一天之前的日志文件,只在測(cè)試環(huán)境裝
Java代碼??在優(yōu)化php代碼執(zhí)行效率的過(guò)程中,有個(gè)好辦法是利用XDebug或XHProf生成Profile文件,然后查看Profile文件分析整個(gè)程序的瓶頸在哪里。如果用XDebug生成Profile文件現(xiàn)在XDebug Profile的查看程序有好幾個(gè)
WinCacheGrind是windows下的profile查看程序,使用起來(lái)感覺(jué)還不錯(cuò),profile文件太大的話偶爾會(huì)崩潰。
KCachegrind是linux下的一個(gè)圖形化profile查看工具,功能很強(qiáng)勁。
總結(jié)
以上是生活随笔為你收集整理的使用XDebug和WinCacheGrind分析PHP性能的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: doT js 宏的使用
- 下一篇: lucene学习001