Heim  >  Artikel  >  Backend-Entwicklung  >  Aufbau einer PHP-Leistungsanalyseplattform

Aufbau einer PHP-Leistungsanalyseplattform

步履不停
步履不停Original
2019-07-01 15:44:373988Durchsuche

Aufbau einer PHP-Leistungsanalyseplattform

Erstellen Sie eine PHP-Leistungsanalyseplattform (tideways + xhgui+ nginx + php7)

Einführung

Erstellen Sie eine PHP-Leistungsanalyseplattform, ohne Ihr Programm zu ändern Code verwendet Nginx, um eine Überwachungsebene über Ihrem Programm hinzuzufügen (um feste Protokolle zu erstellen), die Programminformationen des Protokolls zu analysieren und eine Leistungsanalyse und -optimierung durchzuführen

1. Installieren Sie Mongodb

Lassen Sie hier 1000 Wörter weg und suchen Sie das Dokument selbst

2. Installieren Sie die Mongodb-Erweiterung

    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

3. Installieren Sie die Tideways-Erweiterung

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

4. Ändern Sie die Konfigurationsdatei

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

5. Laden Sie das xhgui-Projekt herunter

    #https://github.com/perftools/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;  
    #   }

6. Konfigurationsdateiänderung

#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数据表加上索引

Das Effektbild ist wie folgt



Aufbau einer PHP-LeistungsanalyseplattformAufbau einer PHP-LeistungsanalyseplattformWeitere technische Artikel zum Thema PHP finden Sie in der Spalte

PHP-Tutorial

, um mehr darüber zu erfahren!

Das obige ist der detaillierte Inhalt vonAufbau einer PHP-Leistungsanalyseplattform. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn