日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

xhprof的简单使用

發布時間:2024/9/20 编程问答 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 xhprof的简单使用 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

簡介

XHProf是一個分層PHP性能分析工具。

前提

我的PHP版本是PHP7:

而xhprof支持PHP7的庫請在longxinH-xhprof查看。

備注:我之前在phacility克隆的,不過安裝失敗,原因就是我的PHP版本是PHP7,而phacility版本的并不支持。(采坑呢~~)

安裝步驟

當做一個php項目!clone別人php代碼放哪個目錄你自己定 1.編譯安裝

?

?

?

cd /Users/birjemin/Developer/Php git clone https://github.com/longxinH/xhprof cd xhprof/extension phpize ./configure make make install

2.配置文件

?

?

?

cd /usr/local/etc/php/7.0/conf.d vim ext-xhprof.ini

添加內容(這個就是編譯成功之后的路徑,見上圖)

?

?

?

[xhprof] extension="/usr/local/Cellar/php70/7.0.14_7/lib/php/extensions/no-debug-non-zts-20151012/xhprof.so"

3.重啟php-fpm(視個人重啟方式而定,我的重啟方式是這樣的)

?

?

?

cd /usr/local/etc/php/7.0/ sudo killall php-fpm sudo /usr/local/Cellar/php70/7.0.14_7/sbin/php-fpm -D

4.查看是否安裝成功

恭喜安裝成功!

使用步驟

1.如果使用呢?兩種方法,第一種就是把xhprof_lib.php和xhprof_runs.php拷貝到項目中,第二種就是用絕對路徑引入這兩個文件,推薦第一種,這樣別人clone的你的項目,不需要做啥。

2.建立兩個開啟函數(isDev()是判斷本地環境的意思,請視情況刪除)

開啟xhproffunction enableXhprof() { isDev() && xhprof_enable(0, []); }運行xhprof(xhprof_lib.php和xhprof_runs.php可以拷貝到項目的,請確保include_once請夠加載這兩個文件)。function disableXhprof() { if (isDev()) { $xhprof_data = xhprof_disable(); include_once app_path() . "/xhprof_lib.php"; include_once app_path() . "/xhprof_runs.php"; $xhprof_runs = new \XHProfRuns_Default(); $run_id = $xhprof_runs->save_run($xhprof_data, "xhprof_foo"); #echo $run_id; } }

3.可以在需要監聽的接口中代碼片段前面加上enableXhprof(),后面加上disableXhprof()就好了。接下來就可以分析這段代碼了。(請確保這兩個函數全局訪問)

4.將克隆的xprof配置虛擬主機,這個和你的項目一樣的,就把xprof也當做一個項目,配置成瀏覽器可訪問。比如我的配置:

host: 127.0.0.1 local.xhprof.comnginx server confserver { listen 80; server_name local.xhprof.com; access_log logs/xhprof.access.log main; autoindex on; location / { root /Users/birjemin/Developer/Php/xhprof; index index.html index.htm index.php; try_files $uri $uri/ /index.php?$query_string; } location ~ \.php$ { root /Users/birjemin/Developer/Php/xhprof; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_intercept_errors on; include fastcgi_params; } }

5.重啟nginx,瀏覽器訪問local.xhprof.com看看能不能訪問(沒有目錄??你是不是瀏覽器無法訪問目錄??權限沒開。。自己配置一下)

6.在postman或者瀏覽器訪問接口,轉啊轉,好了之后就可以去

http://local.xhprof.com/xhprof_html/

查看了。(圖我就不截了。。下次講一下xgui的使用)

遇到的問題

1.php -v的版本和phpinfo()的版本不一致,如下圖:

解決方法:更改php cli的默認版本

我用的是bashvim .bash_profile添加兩行# PHP -v export PATH="/usr/local/Cellar/php70/7.0.14_7/bin:$PATH"生效source .bash_profile

2.編譯成功,但是php -m 沒有 xhprof。

xhprof支持PHP7的庫請在longxinH-xhprof查看!!!!

備注

全程經歷了2.5h吧~~~不過文章也寫了2.5小時。哈哈哈哈~這個東西和xdebug不一樣的,這個是分析性能瓶頸的,可以讓你優化代碼。xdebug主要用于調試,我下次寫一個xdebug安裝的過程。

來源:https://baijiahao.baidu.com/s?id=1591352722493070960&wfr=spider&for=pc

與50位技術專家面對面20年技術見證,附贈技術全景圖

總結

以上是生活随笔為你收集整理的xhprof的简单使用的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。