使用xdebug+webgrind分析php性能
xdebug是php的一個調試工具擴展,webgrind是一個通過web可視化方式來查看xdebug日志的工具,兩個加起來,對于查找PHP整個系統中的性能瓶頸非常有用。
安裝xdebug:https://xdebug.org/download.php 根據自己php版本選擇和下載對應的xdebug
# wget http://xdebug.org/files/xdebug-2.4.1.tgz
# tar zxf xdebug-2.4.1.tgz
# cd xdebug-2.4.1
開始編譯xdebug.so文件,注意自己phpize和php-config的位置,可使用whereis查找
# /data/php/bin/phpize
# ./configure --with-php-config=/data/php/bin/php-config
# make && make install
編譯安裝后.so文件在當前目錄中的modules目錄中,可以放這也可以移走。
配置php.ini
zend_extension="/data/php/lib/php/extensions/xxxxxxx/xdebug.so"
[xdebug]
xdebug.profiler_append=0
xdebug.profiler_output_name="cachegrind.out.%R%u"
xdebug.profiler_enable=On
xdebug.profiler_output_dir="/data/xdebug/"
xdebug.profiler_enable_trigger=On
注意xdebug的so需要使用zend_extension引入,后面寫絕對路徑
其它配置信息自行查詢
重啟php-fpm
# kill -INT `cat /data/php/run/php-fpm.pid`
# /data/php/sbin/php-fpm
訪問phpinfo() 看看是否加載成功
瀏覽器中直接訪問QQ購買webgrind即可,webgrind自動遍歷xdebug所配置的日志目錄,可顯示每一步的調試耗時、耗時占比,也可以直接查看調用所在的代碼位置,服務器安裝了dot的話( sudo apt-get install graphviz ),也可以點擊“show call graph”按鈕以svg圖像方式查看整個調用樹,對于要查找系統哪個位置執行慢的問題非常給力。
總結
以上是生活随笔為你收集整理的使用xdebug+webgrind分析php性能的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 2016rMBP登录后自动关机、帐户数据
- 下一篇: vscode+XDebug调试远程环境(