WinCacheGrind配合XDebug分析PHP程式效能

來源:互聯網
上載者:User

標籤:style   http   io   使用   ar   for   檔案   sp   div   

使用WinCacheGrind來分析php的執行時間和效率,需要安裝XDebug這個擴充。如果對XDebug不太瞭解的話,請先看《PHP調試利器XDebug的安裝與使用》這篇文章。

WinCacheGrind是windows下的profile查看程式。所謂profile,就是程式或軟體儲存的檔案資料,這裡的profile就是xdebug產生的Log檔案。WinCacheGrind :http://sourceforge.net/projects/wincachegrind興城市費永禮品

前面說到的這篇文章已經介紹了使用XDebug時,對php.ini的配置。但是就算XDebug配置完畢,WinCacheGrind也未必能使用。請確保在php.ini檔案有這麼兩處配置:

view source print?
1 ;xdebug.profiler_enable = 0 //預設是0,要改掉
2 xdebug.profiler_enable = on
3 ;xdebug.profiler_output_name = "xdebug_profile.%R::%u" //這個格式WinCacheGrind用不了
4 xdebug.profiler_output_name = "cachegrind.out.%p"

加了這兩行,WinCacheGrind就能使用了。補一個全的:

view source print?
1 extension=php_xdebug.dll
2 xdebug.profiler_enable=on
3 xdebug.trace_output_dir="X:\Projects\xdebug"
4 xdebug.profiler_output_dir="X:\Projects\xdebug"
5 xdebug.profiler_output_name = "cachegrind.out.%p"

最後一行主要是為了和wincachegrind.out整合。

開啟WinCacheGrind,將"Tools"=>"Options" =>"Main"的"working flolder" 設定為php.ini中指定的路徑xdebug目錄。然後重新整理一下本地的網頁,應該就可以看到下面的監控檔案了。

 

開啟在那個目錄中產生的 cachegrind.out.* 就可以看到每一個程序呼叫執行了多長時間。

使用的話比較簡單,展開左側的樹形菜單,尋找最耗時的操作,然後找到代碼,就可以針對性開始最佳化了。比如下面對CI架構的一個應用進行效能分析。

 

WinCacheGrind配合XDebug分析PHP程式效能

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.