小編給大家分享一下PHP + xdebug分析代碼性能瓶頸的案例,希望大家閱讀完這篇文章之后都有所收獲,下面讓我們一起去探討吧!
成都一家集口碑和實力的網(wǎng)站建設(shè)服務(wù)商,擁有專業(yè)的企業(yè)建站團隊和靠譜的建站技術(shù),10年企業(yè)及個人網(wǎng)站建設(shè)經(jīng)驗 ,為成都上1000家客戶提供網(wǎng)頁設(shè)計制作,網(wǎng)站開發(fā),企業(yè)網(wǎng)站制作建設(shè)等服務(wù),包括成都營銷型網(wǎng)站建設(shè),品牌網(wǎng)站設(shè)計,同時也為不同行業(yè)的客戶提供成都網(wǎng)站設(shè)計、網(wǎng)站建設(shè)的服務(wù),包括成都電商型網(wǎng)站制作建設(shè),裝修行業(yè)網(wǎng)站制作建設(shè),傳統(tǒng)機械行業(yè)網(wǎng)站建設(shè),傳統(tǒng)農(nóng)業(yè)行業(yè)網(wǎng)站制作建設(shè)。在成都做網(wǎng)站,選網(wǎng)站制作建設(shè)服務(wù)商就選創(chuàng)新互聯(lián)。PHP + xdebug 分析代碼性能瓶頸
通常啟用了xdebug
插件,性能測試輸出文件會伴隨生成,通常是以cachegrind.out.xxxx
文件存在。
該文件可以通過第三方工具來進行代碼性能分析。
但如果本地有多個項目/網(wǎng)站,所有的profile 都輸出到一個文件中了,這樣并不方便后面進行性能分析。
可以通過配置xdebug.profiler_output_name
參數(shù)來設(shè)置輸出文件名稱,部分參數(shù)如下:
符號 | 含義 | 配置樣例 | 樣例文件名 |
---|---|---|---|
%c | 當前工作目錄的crc32校驗值 | cachegrind.out.%c | cachegrind.out.1258863198 |
%p | 當前服務(wù)器進程的pid | cachegrind.out.%p | cachegrind.out.9685 |
%r | 隨機數(shù) | cachegrind.out.%r | cachegrind.out.072db0 |
%s | 腳本文件名(注) | cachegrind.out.%s | cachegrind.out._home_httpd_html_test_xdebug_test_php |
%t | Unix時間戳(秒) | cachegrind.out.%t | cachegrind.out.1179434742 |
%u | Unix時間戳(微秒) | cachegrind.out.%u | cachegrind.out.1179434749_642382 |
%H | $_SERVER['HTTP_HOST'] | cachegrind.out.%H | cachegrind.out.localhost |
%R | $_SERVER['REQUEST_URI'] | cachegrind.out.%R | cachegrind.out._test_xdebug_test_php_var=1_var2 |
%S | session_id (來自$_COOKIE 如果設(shè)置了的話) | cachegrind.out.%S | cachegrind.out.c70c1ec2375af58f74b390bbdd2a679d |
%% | %字符 | cachegrind.out.%% | cachegrind.out.%% |
編輯php.ini
配置文件:
xdebug.profiler_output_name = cachegrind.out.%H
然后重啟 php server。
在Mac 下,profile 文件存放于/var/tmp/
目錄中。
在Mac 下,有MacCallGrind 和 qcachegrind 可以使用,不過前者是收費,直接通過Apple Store下載,后者是免費。需要手動安裝。
安裝graphviz,用來Call Graph功能:
$ brew install graphviz
安裝 qcachegrind:
$ brew install qcachegrind
安裝完成之后,就可以打開qcachegrind
應(yīng)用了,圖形界面如下:
不過需要注意,開啟了profile
文件輸出之后,如果本地項目多的話,很容易占用磁盤大面積空間,下圖是我半年左右沒有清理的狀態(tài):
可以使用命令進行清理:
$ sudo rm -fr /private/var/tmp/cachegrind.out.*
看完了這篇文章,相信你對“PHP + xdebug分析代碼性能瓶頸的案例”有了一定的了解,如果想了解更多相關(guān)知識,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝各位的閱讀!
網(wǎng)站標題:PHP+xdebug分析代碼性能瓶頸的案例-創(chuàng)新互聯(lián)
轉(zhuǎn)載源于:http://bm7419.com/article28/dpogcp.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供App設(shè)計、網(wǎng)站設(shè)計公司、企業(yè)網(wǎng)站制作、網(wǎng)站建設(shè)、網(wǎng)站導航、微信小程序
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容