Heim  >  Artikel  >  Backend-Entwicklung  >  Tideways+Toolkit führt eine Leistungsanalyse für PHP-Code durch

Tideways+Toolkit führt eine Leistungsanalyse für PHP-Code durch

藏色散人
藏色散人nach vorne
2019-09-24 09:36:483013Durchsuche

Toolkit ist ein Befehlszeilentool für die Leistungsanalyse, das offiziell von Tideway bereitgestellt wird. Wenn Sie die Schnittstellenleistung nur lokal entwickeln und debuggen und xhgui nicht installieren möchten, reicht die Verwendung des Toolkits

Installieren

Tideways-Erweiterung installieren

git clone https://github.com/tideways/php-xhprof-extension.git
cd php-profiler-extension
phpize
./configure
make && make install

Hinzufügen

extension=tideways_xhprof.so

php-fpm neu starten

service php-fpm restart

Toolkit-Installation

go get github.com/tideways/toolkit
# 安装graphviz
# macOS
brew install graphviz
# ubuntu
sudo apt-get install -y graphviz

Alias ​​festlegen

alias tk=toolkit

tideways+toolkit

Code Buried Points

Fügen Sie

if (extension_loaded('tideways_xhprof')) {
    tideways_xhprof_enable(TIDEWAYS_XHPROF_FLAGS_CPU | TIDEWAYS_XHPROF_FLAGS_MEMORY);
}
// 你的代码
application();
if (extension_loaded('tideways_xhprof')) {
    $data = tideways_xhprof_disable();
    file_put_contents(
        sprintf('%s/app.xhprof', '/path/to'),
        json_encode($data)
    );
}

zum Programmeintrag hinzu und führen Sie den Code aus, und dann wird /path/to/app.xphrof wt_excl generiert, andere Indikatoren umfassen

1.wt-Aufrufzeit, einschließlich Unterfunktion 2.excl_wt-Aufrufzeit, ohne Unterfunktion

3.cpu CPU-Aufrufzeit, einschließlich Unterfunktionen Tideways+Toolkit führt eine Leistungsanalyse für PHP-Code durch

4.excl_cpu CPU-Aufrufzeit, ohne Unterfunktionen

5.memory Speicherverbrauch (Bytes), einschließlich Unterfunktionen

6.excl_memory Speicherverbrauch (Bytes), ohne Unterfunktionen

7.io io Dauer, einschließlich Unterfunktionen

8.excl_io io Dauer, ohne Unterfunktionen

Generierung Das Leistungsengpassdiagramm

tk analyze-xhprof /path/to/app.xphrof

zeigt die folgenden Indikatoren an:

1. Funktionsname

2. Inkl. Funktionslaufzeit, einschließlich UnterfunktionenTideways+Toolkit führt eine Leistungsanalyse für PHP-Code durch

3. Ohne Funktionslaufzeit, ohne Unterfunktionen

4. Gesamtanrufe Gesamtanrufe

Das obige ist der detaillierte Inhalt vonTideways+Toolkit führt eine Leistungsanalyse für PHP-Code durch. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:segmentfault.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen