PHP 效能分析平臺搭建 (tideways + xhgui+ nginx + PHP7)

crazyly發表於2019-06-26

PHP效能分析平臺搭建(tideways + xhgui+ nginx + php7)

一、安裝mongodb

此處省略1000字,自己查詢文件

二、安裝mongodb擴充套件

    wget http://pecl.php.net/get/mongodb-1.4.0.tgz
    tar -zxvf mongodb-1.4.0.tgz
    cd mongodb-1.4.0
    phpize
    ./configure --with-php-config=你的php-config路徑 我的是在/usr/local/Cellar/php@7.1/7.1.16_1/bin/php-config
    make
    make install

三、安裝tideways擴充套件

    git clone https://github.com/tideways/php-profiler-extension.git
    cd php-profiler-extension
    phpize
    ./configure --with-php-config=你的php-config路徑
    make 
    make install

四、修改配置檔案

    extension=tideways.so
    tideways.auto_prepend_library=0
    extension=mongodb.so

五、下載xhgui專案

    git clone https://github.com/perftools/xhgui.git
    cd xhgui
    php install.php(看下是否有vendor這個目錄)
    ##專案配置
    #配置檔案:config/default_config.php
    #執行目錄:webroot
    #nginx rewrite規則
    #   location / {  
    #       try_files $uri $uri/ /index.php$is_args$query_string;  
    #   }  

六、配置檔案修改

#xhgui 預設是採集1% ,如果是排查問題時還是希望能夠100%採集會比較方便。進入xhgui原始碼目錄,修改config/config.default.php檔案,
#平時仍然按1%的取樣率取樣,防止資料增長過快,當想除錯時,就在URL中新增debug=1的引數即可。
#在xhgui/config/config.default.php中,找到profiler.enable這裡,按如下修改:
#mongo
//取樣率
'profiler.enable' => function() {
    // url 中包含debug=1則百分百捕獲
    if(!empty($_GET['debug'])){
        return true;
    } else {
        // 1%取樣
        return rand(1, 100) === 42;
    }
},
//優化建議:可以給mongo資料表加上索引

七、使用&效果

//在需要的專案中的最開始,引入檔案即可
require "/dir/external/header.php";
//操作專案,即可在xhgui平臺中檢視資料分析效能

效果圖如下圖
效果圖1
效果圖2

當你的才華撐不起你的野心,那就靜下來學習

相關文章