Inhaltsverzeichnis
自定义profile 文件名称
性能分析
其他
Benutzerdefinierter Profildateiname
Leistungsanalyse
Andere
Heim Backend-Entwicklung PHP-Tutorial Informationen zur PHP+xdebug-Analyse von Code-Leistungsengpässen

Informationen zur PHP+xdebug-Analyse von Code-Leistungsengpässen

Feb 18, 2021 pm 05:27 PM
php xdebug

PHP + xdebug zur Analyse von Code-Leistungsengpässen

Normalerweise ist das Plug-in xdebug aktiviert und die Ausgabedatei für den Leistungstest wird generiert , normalerweise mit der Datei cachegrind.out.xxxx. xdebug插件,性能测试输出文件会伴随生成,通常是以cachegrind.out.xxxx 文件存在。

该文件可以通过第三方工具来进行代码性能分析。

但如果本地有多个项目/网站,所有的profile 都输出到一个文件中了,这样并不方便后面进行性能分析。

自定义profile 文件名称

可以通过配置xdebug.profiler_output_name 参数来设置输出文件名称,部分参数如下:

符号 含义 配置样例 样例文件名
%c 当前工作目录的crc32校验值 cachegrind.out.%c cachegrind.out.1258863198
%p 当前服务器进程的pid cachegrind.out.%p cachegrind.out.9685
%r 随机数 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 如果设置了的话) cachegrind.out.%S cachegrind.out.c70c1ec2375af58f74b390bbdd2a679d
%% %字符 cachegrind.out.%% cachegrind.out.%%

编辑php.ini 配置文件:

xdebug.profiler_output_name = cachegrind.out.%H
Nach dem Login kopieren

然后重启 php server。

在Mac 下,profile 文件存放于/var/tmp/目录中。

性能分析

在Mac 下,有MacCallGrind 和 qcachegrind 可以使用,不过前者是收费,直接通过Apple Store下载,后者是免费。需要手动安装。

安装graphviz,用来Call Graph功能:

$ brew install graphviz
Nach dem Login kopieren

安装 qcachegrind:

$ brew install qcachegrind
Nach dem Login kopieren

安装完成之后,就可以打开 qcachegrind 应用了,图形界面如下:

Informationen zur PHP+xdebug-Analyse von Code-Leistungsengpässen

其他

不过需要注意,开启了profile

Diese Datei kann für die Code-Leistungsanalyse durch Tools von Drittanbietern verwendet werden.

Aber wenn mehrere Projekte/Websites lokal vorhanden sind, werden alle Profile in einer Datei ausgegeben, was für eine spätere Leistungsanalyse nicht praktisch ist.

Benutzerdefinierter Profildateiname

Informationen zur PHP+xdebug-Analyse von Code-LeistungsengpässenSie können den Namen der Ausgabedatei festlegen, indem Sie den Parameter xdebug.profiler_output_name konfigurieren. Einige Parameter lauten wie folgt:

cachegrind.out.%H table> Bearbeiten Sie die Konfigurationsdatei php.ini:

$ sudo rm -fr /private/var/tmp/cachegrind.out.*
Nach dem Login kopieren
Dann starten Sie den PHP-Server neu. 🎜Unter Mac werden Profildateien im Verzeichnis /var/tmp/ gespeichert. 🎜

Leistungsanalyse

🎜Unter Mac sind MacCallGrind und qcachegrind verfügbar, ersteres ist jedoch kostenpflichtig und kann direkt über den Apple Store heruntergeladen werden, während letzteres kostenlos ist. Erfordert eine manuelle Installation. 🎜🎜Graphviz für die Call Graph-Funktion installieren: 🎜rrreee🎜Qcachegrind installieren: 🎜rrreee🎜Nachdem die Installation abgeschlossen ist, können Sie die Anwendung qcachegrind wie folgt öffnen: 🎜🎜Informationen zur PHP+xdebug-Analyse von Code-Leistungsengpässen🎜

Andere

🎜 Es ist jedoch zu beachten, dass nach dem Aktivieren der Dateiausgabe profile bei vielen lokalen Projekten leicht ein großer Bereich des Festplattenspeichers belegt wird. Das Bild unten zeigt den Status Ich habe seit etwa einem halben Jahr nicht mehr aufgeräumt: 🎜🎜🎜🎜🎜🎜🎜🎜 Das Reinigen kann mit dem Befehl erfolgen: 🎜rrreee🎜
Symbol Bedeutung Konfigurationsbeispiel Name der Beispieldatei
%c Crc32-Prüfwert des aktuellen Arbeitsverzeichnisses cachegrind.out.%c cachegrind.out.1258863198
%p Die PID des aktuellen Serverprozesses cachegrind.out.%p cachegrind.out .9685
%r Zufallszahl cachegrind.out.%r cachegrind.out .072db0
%s Name der Skriptdatei (Hinweis) cachegrind.out.%s cachegrind.out._home_httpd_html_test_xdebug_test_php
%t Unix-Zeitstempel (Sekunden) cachegrind.out.%t td> cachegrind.out.1179434742
%u Unix-Zeitstempel (Mikrosekunden) cachegrind.out .%u cachegrind.out.1179434749_642382
%H $_SERVER['HTTP_HOST']cachegrind.out.localhost
%R $_SERVER['REQUEST_URI'] cachegrind.out.%R cachegrind.out._test_xdebug_test_php_var=1_var2
%S session_id (von $_COOKIE, falls gesetzt) cachegrind.out.%S cachegrind.out.c70c1ec2375af58f74b390bbdd2a679d
% % % Zeichen cachegrind.out.%% cachegrind.out.%%

Das obige ist der detaillierte Inhalt vonInformationen zur PHP+xdebug-Analyse von Code-Leistungsengpässen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
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

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
2 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
Repo: Wie man Teamkollegen wiederbelebt
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Abenteuer: Wie man riesige Samen bekommt
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

CakePHP-Projektkonfiguration CakePHP-Projektkonfiguration Sep 10, 2024 pm 05:25 PM

In diesem Kapitel werden wir die Umgebungsvariablen, die allgemeine Konfiguration, die Datenbankkonfiguration und die E-Mail-Konfiguration in CakePHP verstehen.

PHP 8.4 Installations- und Upgrade-Anleitung für Ubuntu und Debian PHP 8.4 Installations- und Upgrade-Anleitung für Ubuntu und Debian Dec 24, 2024 pm 04:42 PM

PHP 8.4 bringt mehrere neue Funktionen, Sicherheitsverbesserungen und Leistungsverbesserungen mit einer beträchtlichen Menge an veralteten und entfernten Funktionen. In dieser Anleitung wird erklärt, wie Sie PHP 8.4 installieren oder auf PHP 8.4 auf Ubuntu, Debian oder deren Derivaten aktualisieren. Obwohl es möglich ist, PHP aus dem Quellcode zu kompilieren, ist die Installation aus einem APT-Repository wie unten erläutert oft schneller und sicherer, da diese Repositorys in Zukunft die neuesten Fehlerbehebungen und Sicherheitsupdates bereitstellen.

CakePHP Datum und Uhrzeit CakePHP Datum und Uhrzeit Sep 10, 2024 pm 05:27 PM

Um in cakephp4 mit Datum und Uhrzeit zu arbeiten, verwenden wir die verfügbare FrozenTime-Klasse.

CakePHP-Datei hochladen CakePHP-Datei hochladen Sep 10, 2024 pm 05:27 PM

Um am Datei-Upload zu arbeiten, verwenden wir den Formular-Helfer. Hier ist ein Beispiel für den Datei-Upload.

CakePHP-Routing CakePHP-Routing Sep 10, 2024 pm 05:25 PM

In diesem Kapitel lernen wir die folgenden Themen im Zusammenhang mit dem Routing kennen.

Besprechen Sie CakePHP Besprechen Sie CakePHP Sep 10, 2024 pm 05:28 PM

CakePHP ist ein Open-Source-Framework für PHP. Es soll die Entwicklung, Bereitstellung und Wartung von Anwendungen erheblich vereinfachen. CakePHP basiert auf einer MVC-ähnlichen Architektur, die sowohl leistungsstark als auch leicht zu verstehen ist. Modelle, Ansichten und Controller gu

So richten Sie Visual Studio-Code (VS-Code) für die PHP-Entwicklung ein So richten Sie Visual Studio-Code (VS-Code) für die PHP-Entwicklung ein Dec 20, 2024 am 11:31 AM

Visual Studio Code, auch bekannt als VS Code, ist ein kostenloser Quellcode-Editor – oder eine integrierte Entwicklungsumgebung (IDE) –, die für alle gängigen Betriebssysteme verfügbar ist. Mit einer großen Sammlung von Erweiterungen für viele Programmiersprachen kann VS Code c

CakePHP erstellt Validatoren CakePHP erstellt Validatoren Sep 10, 2024 pm 05:26 PM

Der Validator kann durch Hinzufügen der folgenden zwei Zeilen im Controller erstellt werden.

See all articles