Wie debugge ich die Anwendungsleistungsüberwachung von PHP-Funktionen mit New Relic?

WBOY
Freigeben: 2024-04-23 12:24:02
Original
534 Leute haben es durchsucht

New Relic ist ein APM-Tool, das bei der Lösung von PHP-Funktionsleistungsproblemen hilft und die folgenden Funktionen umfasst: Transaktionsverfolgung: Verfolgt den Anforderungslebenszyklus, einschließlich der Funktionsausführungszeit. SQL-Abfragemonitor: Identifizieren Sie SQL-Anweisungen, die langsame Abfragen verursachen. Benutzerdefinierte Ereignisse: Messen Sie die Leistung bestimmter Ereignisse. Durch die Analyse können Benutzer Engpässe identifizieren und beheben, beispielsweise durch die Optimierung von Funktionen, um doppelte SQL-Abfragen zu verhindern.

如何用 New Relic 调试 PHP 函数的应用程序性能监控?

So debuggen Sie die Anwendungsleistungsüberwachung von PHP-Funktionen mit New Relic

New Relic ist ein beliebtes Application Performance Monitoring (APM)-Tool, das Ihnen hilft, potenzielle Leistungsprobleme in PHP-Funktionen zu identifizieren und zu beheben. Es bietet umfassende Einblicke und Analysefunktionen, sodass Sie Anwendungsengpässe schnell diagnostizieren und beheben können.

Installieren Sie die New Relic-Erweiterung.

Um New Relic verwenden zu können, müssen Sie die PHP-Erweiterung installieren. Sie können das Composer-Installationsprogramm verwenden:

composer require newrelic/newrelic-php
Nach dem Login kopieren

Anwendungsleistungsüberwachung aktivieren

Nach der Installation der Erweiterung müssen Sie die Anwendungsleistungsüberwachung aktivieren. Sie können dies tun, indem Sie die folgende Zeile zu Ihrer php.ini-Datei hinzufügen:

newrelic.appname = "YourAppName"
newrelic.license = "YourLicenseKey"
Nach dem Login kopieren

Funktionsleistung debuggen

New Relic bietet viele Funktionen, die Ihnen beim Debuggen der Funktionsleistung helfen. Dazu gehören:

  • Transaktionsverfolgung: Diese Funktion verfolgt den gesamten Anforderungslebenszyklus, einschließlich der Zeit, die zum Ausführen einer Funktion benötigt wird.
  • SQL-Abfragemonitor: Diese Funktion hilft Ihnen, SQL-Anweisungen zu identifizieren, die langsame Abfragen verursachen.
  • Benutzerdefinierte Ereignisse: Mit dieser Funktion können Sie die Leistung bestimmter Ereignisse in Ihrem Code messen.

Praktischer Fall

Betrachten wir ein Beispiel für die Verwendung von New Relic zum Debuggen einer langsamen Funktion, die Leistungsprobleme verursacht. Angenommen, Sie haben eine Funktion compute_data():compute_data():

function compute_data() {
  $data = [];
  for ($i = 0; $i < 10000; $i++) {
    $data[] = $i * $i;
  }
  return $data;
}
Nach dem Login kopieren

调用此函数会导致性能问题。使用 New Relic 的交易追踪功能,您可以发现 compute_data() 函数需要很长时间才能执行。通过使用 SQL 查询监视器,您可以看到函数中的 for 循环正在执行大量不必要的 SQL 查询。

修复性能问题

一旦您识别了导致性能问题的瓶颈,您就可以采取措施解决它。在本例中,您可以通过使用缓存机制来防止重复的 SQL 查询来优化 compute_data()

function compute_data() {
  $data = [];
  if (cache_get('data')) {
    return cache_get('data');
  }
  for ($i = 0; $i < 10000; $i++) {
    $data[] = $i * $i;
  }
  cache_set('data', $data);
  return $data;
}
Nach dem Login kopieren
Der Aufruf dieser Funktion führt zu Leistungsproblemen. Mithilfe der Transaktionsverfolgungsfunktion von New Relic können Sie feststellen, dass die Ausführung der Funktion compute_data() lange dauert. Mithilfe des SQL-Abfragemonitors können Sie erkennen, dass die for-Schleife in der Funktion eine große Anzahl unnötiger SQL-Abfragen ausführt. 🎜🎜🎜Leistungsprobleme beheben🎜🎜🎜Sobald Sie den Engpass identifiziert haben, der Leistungsprobleme verursacht, können Sie Maßnahmen zur Behebung ergreifen. In diesem Fall können Sie die Funktion compute_data() optimieren, indem Sie einen Caching-Mechanismus verwenden, um doppelte SQL-Abfragen zu verhindern. 🎜rrreee

Das obige ist der detaillierte Inhalt vonWie debugge ich die Anwendungsleistungsüberwachung von PHP-Funktionen mit New Relic?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!